Как я могу изменить начало пути ярлыка для Nsis? - PullRequest
17 голосов
/ 10 июня 2009

У меня есть сценарий установки nsis для приложения, над которым я работаю, и он может поместить ярлык на рабочий стол и в папку меню «Пуск», но у каждого ярлыка неправильный старт в пути, и поэтому приложение сохраняет файлы данных в том месте, где короткий путь есть.

Есть ли простой способ изменить начало пути, так как документация была менее чем полезной?

Section "Desktop Shortcut" SHORTCUT
    SetOutPath "$DESKTOP"
    CreateShortcut "${FULL_APP_NAME}.lnk" "$INSTDIR\${APP_NAME}.exe" "" "$ICONDIR\${DESKICO}"
SectionEnd

Ответы [ 2 ]

18 голосов
/ 14 марта 2010

Пожалуйста, смотрите следующую страницу документации NSIS:

http://nsis.sourceforge.net/Docs/Chapter4.html#4.9.3.4

В частности, пожалуйста, посмотрите на предложение, которое гласит:

"$ OUTDIR используется для рабочего каталога. Вы можете изменить его с помощью SetOutPath перед созданием ярлыка."

Другими словами, вам нужно использовать «SetOutPath», чтобы указать папку «Start In» для ярлыка. Вот почему решение, опубликованное Zerofiz, работает:

Section "Desktop Shortcut" SHORTCUT
    SetOutPath "$INSTDIR"
    CreateShortcut "$DESKTOP\${FULL_APP_NAME}.lnk" "$INSTDIR\${APP_NAME}.exe" "" "$ICONDIR\${DESKICO}"
SectionEnd

Это приведет к запуску ярлыка в $ INSTDIR.

13 голосов
/ 10 июня 2009

Попробуйте это:

Section "Desktop Shortcut" SHORTCUT
     SetOutPath "$INSTDIR"
     CreateShortcut "$DESKTOP\${FULL_APP_NAME}.lnk" "$INSTDIR\${APP_NAME}.exe" "" "$ICONDIR\${DESKICO}"
SectionEnd
...