diakov, Я же говорил общие ключи, ярлыки пишите вне логики, ну зачем
же писать одно тоже по несколько раз.
Цитата:
И еще такое теперь получается, если х64 то
Ил моно как то упростить)))
|
Все зависит от конкретной программы и требований к установке.
Ну к примеру, если 32-битная и 64-битная программа распаковывается в папку C:\app,
то команду создания ярлыков по логике пишем один раз, а если в папку программ, то можно
пуступить так:
Код:
InstallDir "$ProgramFiles64\App"
-
Section
SetOutPath "$INSTDIR"
${If} ${RunningX64}
File /r "${pkgdir}\greylink\x64\"
;;
${Else}
File /r "${pkgdir}\greylink\x86\"
;;
${EndIf}
;команда cоздания ярлыков
SecnionEnd
В x64 в переменную $INSTDIR - вернет путь к папке 64-битных программ
Program Files, а не 32 битных программ - Program Files(х86)
И следовательно в х32 вернет путь к обычной папке программ
Program Files
С деинсталятором почти также, но важное отличие, деисталлятор возвращает путь в
переменную $INSTDIR - текущий каталог, откуда запущен деинсталлятор.
Цитата:
ключи для контекста под х64
${Else}
ключи для контекста под х86
|
Если CLSID ключей одинаковы, то можно писать только один раз.
Во общем смотрите, что общее в х32 и х64, а различия пишите в логику RunningX64