Lodle
Lodle

Reputation: 32227

How do i change the start in path of a shortcut for nsis?

I have an nsis installer script for the application im working on and it can place a shortcut on the desktop and in the start menu folder but each shortcut has the wrong start in path and as such the app saves data files to where the short cut is.

Is there an easy way to change the start in path as the documentation was less than helpful on the matter?

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

Upvotes: 24

Views: 10349

Answers (3)

William
William

Reputation: 421

Note: if you just want the "Start in:" field to be blank, you can also use the /NoWorkingDir flag mentioned in the link to the documentation. http://nsis.sourceforge.net/Docs/Chapter4.html#4.9.3.4

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

Upvotes: 0

user293212
user293212

Reputation:

Please see the following page of the NSIS documentation:

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

In particular, please look at the sentence that reads:

"$OUTDIR is used for the working directory. You can change it by using SetOutPath before creating the Shortcut."

In other words, you need to use 'SetOutPath' to specify the "Start In" folder for the shortcut. This is why the solution posted by Zerofiz works:

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

This will cause the shortcut to start in $INSTDIR.

Upvotes: 27

Calvin Allen
Calvin Allen

Reputation: 4248

Try this:

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

Upvotes: 17

Related Questions