2009-06-10 9 views
15

私は作業中のアプリケーション用のnsisインストーラスクリプトを持っています。これは、デスクトップとスタートメニューフォルダにショートカットを置くことができますが、各ショートカットにはパスが間違っています。そのため、アプリケーションは、カットです。nsisのショートカットの開始位置を変更するにはどうすればよいですか?

ドキュメントの内容が参考になるほど簡単でないため、パスの先頭を簡単に変更する方法はありますか?

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

答えて

12

これを試してみてください:

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

魅力的な作品です。ありがとう – Lodle

17

NSISドキュメントの以下のページを参照してください:

:特に

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

を読み込む文を見てください。

"作業ディレクトリには$ OUTDIRが使用されています。ショートカットを作成する前にSetOutPathを使用してください。

つまり、ショートカットの「開始」フォルダを指定するには、「SetOutPath」を使用する必要があります。これがZerofizによって投稿されたソリューションが動作する理由です:

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

これにより、ショートカットが$ INSTDIRから開始されます。

関連する問題