Во-первых, пожалуйста, не назначайте свои данные для list
. Это имя класса list
, и его перезапись может только ввести в заблуждение.
К вашему вопросу,
print(definitions.input[index])
не работает, потому что definitions.input
не является списком и на самом деле, вообще не существует. Но
print(getattr(definitions, "input"+str(index)))
будет работать, пока "input"+str(index)
оценивается как input0
или тому подобное.
Реальная ассоциация хранится в ключе это "HKEY_CLASSES_ROOT\.xml"
точки к.
На моей машине говорит значение по умолчанию того ключа "xmlfile"
, скорее всего, это - то же для Вашего.
Поэтому давайте перейдем в "HKEY_CLASSES_ROOT\xmlfile"
. Там Вы видите (и изменение), какая команда будет используемой для запуска того типа файла:
HKEY_CLASSES_ROOT\xmlfile\shell\open\command
Windows использует этот вид перенаправления для отображения нескольких расширений файла на тот же тип файла, и таким образом на то же приложение.
Под "HKEY_CLASSES_ROOT\xmlfile\shell"
существует несколько подразделов, которые напоминают "глаголы" того, что можно сделать в файл. Снова, значение по умолчанию "shell"
ключ решает, какой из этих глаголов используется, если Вы дважды щелкаете по файлу. В моем случае это "open"
.
Заключение:
С тем знанием самый легкий способ сделать ассоциацию scriptable состоит в том, чтобы использовать regedit, чтобы экспортировать .reg файл, содержащий то изменение и применить его к целевому компьютеру двойным щелчком или:
regedit /s new_xml_association.reg
или (если Вы находитесь на XP или выше и знаете то, что Вы делаете) перезаписывают текущее значение с:
reg add "HKEY_CLASSES_ROOT\xmlfile\shell\open\command" /ve /d "path\to\program %1"
Во всяком случае, более глубокое изучают reg add/?
команда рекомендуется. Первое решение более безопасно.
рассмотрите команду DOS assoc
:
C:> помощник/? Дисплеи или изменяют ассоциации расширения файла
ПОМОЩНИК [.ext [= [тип файла]]]
.ext Указывает, что расширение файла для соединения типа файла с типом файла Указывает тип файла для соединения с расширением файла
Введите ПОМОЩНИКА без параметров для отображения текущих ассоциаций файлов. Если ПОМОЩНИК вызывается только с расширением файла, оно отображает текущую ассоциацию файлов для того расширения файла. Ничего не укажите для типа файла, и команда удалит ассоциацию для расширения файла.