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

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

Аватара для wolkow70

Ветеран


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

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


Цитата Begin2Fly:
wolkow70, а если пойти другим путём и вместо проверки самого ключа посмотреть на то, за что он отвечает?
То есть в данном случае за смену папки установки, поэтому, как вариант: »
Примерно по такому пути пока и пошел. Сделал примерно так:

Var CmdInstallDirectory
InstallDir "$INSTDIR"

Function .OnInit
StrCpy $CmdInstallDirectory "$INSTDIR"
;
здесь разный код, в том числе переназначение $INSTDIR по нужным условиям
;
${If} "$CmdInstallDirectory" == ""
${Else}
StrCpy "$INSTDIR" "$CmdInstallDirectory"
${EndIf}
FunctionEnd

Получается, что если нет ключа /D= , то $INSTDIR меняется в функции, а если ключ /D= присутствует, то значение $INSTDIR восстанавливается в конце функции из ключа /D=.

-------
Человек человеку - друг, товарищ и волк!


Отправлено: 13:15, 23-02-2014 | #1037