1

NSIS を使用してプログラム インストーラーを実行していますが、/D オプションが機能していないようです (または内部でオーバーライドされた方がよいでしょう)。コマンドライン経由でトリガーします:

installer.exe /S /D=C:\Users\Public\installDir

NSIS コードは次のとおりです。

InstallDir "C:\Users\Public\${VERSIONSTR}"


Function xxxx
 ${If} $MultiUser.InstallMode == "AllUsers"      
 StrCpy $INSTDIR "C:\Users\Public\Dir1"
 ${EndIf}
 IfSilent 0 +20
   StrCpy $INSTDIR "C:\Userdata\Dir2"
FunctionEnd

使用するインストール フォルダは「C:\Users\Public\Dir2」です。IfSilent ブロックにコメントしても、インストール フォルダーは「C:\Users\Public\Dir1」になりますが、コマンド ライン経由で渡されることはありません。スクリプトの何が問題になっていますか?

4

1 に答える 1