ошибка при создании ярлыка установщиком nsis, при создании ярлыка для пакетного файла присваивается неизвестное начальное значение

#installation #nsis #shortcut

#установка #nsis #ярлык

Вопрос:

Я создаю ярлык для пакетного файла в каталоге установки. У меня также есть ZIP-папка внутри каталога установки.

$INSTDIR задается пользователем в диалоговом окне каталога как: E:myfolder

Когда установщик создает ярлык, то при просмотре СВОЙСТВ этого файла ярлыка я обнаружил, что Start в : is = E:myfolderZIP почему так?

я хочу, чтобы это было E:myfolder.

Я не знаю, почему он добавляет этот «ZIP» в значение Start в?

   CreateShortCut "$INSTDIRmySOFTWARE.lnk" "$INSTDIRmysoftware.bat"
  

Ответ №1:

CreateShortcut использует $outdir в качестве start in folder, поэтому, если вам нужен конкретный start in folder, вы должны использовать SetOutPath перед вызовом CreateShortcut:

 SetOutPath "$INSTDIR"
CreateShortcut "$INSTDIRmySOFTWARE.lnk" "$INSTDIRmysoftware.bat"
  

Другой альтернативой является использование определенного пути в вашем пакетном файле, «% ~ dp0» — это путь к папке, в которой находится .bat.