Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

SHVtYW4=


Сообщения: 3451
Благодарности: 1273

Профиль | Отправить PM | Цитировать


Цитата ChVL:
Всё, что Вы здесь расписали - так и сделано. »
Что именно сделано?
Экспортированно через
Цитата ChVL:
ISTool »
а затем правка? Про Converter ни слова не написал.
ISTool и InnoIDE не умеют правильно обрабатывать ключи.

Для этого используй Converter или Inno Script Studio - вставляют правильно, без слеша..

Цитата ChVL:
Вопрос в другом: как автоматически пройти тот путь, который указан в моём посте, т.е. исключить необходимость ручной правки скрипта. »
Совсем не получится.
Например если в файле reg присутствует путь "C:\\Program Files\\MyTeam\\MyProg\\MyProg.exe" то в ValueData так и запишется "C:\Program Files\MyTeam\MyProg\MyProg.exe" и речи, ни о каких "{app}\MyProg.exe" не может быть идти т.к в программах за ранее не заложена вставка-(автоматическая замена) переменных Inno для реестра.

И ещё один момент: На кой в секции [Registry] прописаны эти:
Код: Выделить весь код
Root: "HKCR"; Subkey: ".323"; ValueType: string; ValueData: """C:\Program Files\MyTeam\MyProg\MyProg.exe"",0"
Код: Выделить весь код
Root: "HKCR"; Subkey: ".323"; ValueType: string; ValueData: """C:\Program Files\MyTeam\MyProg\MyProg.exe"" --started-from-file ""%1"""
две строки?
Одна для значка а другая исполняемая?
При инсталляции запишется только одна, т.е при инсталляции запишется первая - а затем первую, заменит вторая - либо наоборот. По этому всё равно запишется только одно значение.

Правильнее будет так (покажу на примере ассоциации расширения *.text к AkelPad-у):
Код: Выделить весь код
[Registry]
Root: HKLM; Subkey: Software\Classes\.text; ValueType: string; ValueName: ; ValueData: AkelPad.Note; Flags: uninsdeletevalue
Root: HKLM; Subkey: Software\Classes\AkelPad.Note\DefaultIcon; ValueType: string; ValueName: ; ValueData: {app}\AkelPad.exe,1; Flags: uninsdeletevalue
Root: HKLM; Subkey: Software\Classes\AkelPad.Note\shell\open\command; ValueType: string; ValueName: ; ValueData: "{app}\AkelPad.exe ""%1"""; Flags: uninsdeletevalue
Полагаясь на возможности одних только программ для обработки - этого мало, в первую очередь нужно самому реестр понимать.

Последний раз редактировалось Nordek, 15-02-2014 в 21:39.

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:57, 15-02-2014 | #2283