可以通过命令行指定输出文件目录吗?

naw*_*fal 6 nsis command-line-arguments output

我有一个.nsi文件,我通过命令行调用输出安装程序,如下所示:

makensis fullPathToNsiScript
Run Code Online (Sandbox Code Playgroud)

这会在我的nsi脚本所在的文件夹中创建安装程序.我需要将它输出到特定的文件夹,比如桌面.是否可以通过命令行执行此操作?

我知道正确的方法是在脚本本身中指定它,比如

OutFile "outputFileFullPath"
Run Code Online (Sandbox Code Playgroud)

但是,假设我只在nsi脚本中提供输出文件的基本名称,是否可以通过命令行进行操作?就像是:

在脚本中,

OutFile "outputFilename"
Run Code Online (Sandbox Code Playgroud)

然后在命令行中

makensis fullPathToNsiScript "outputFileFullPath"
Run Code Online (Sandbox Code Playgroud)

?以上显然不起作用.

And*_*ers 8

makensis "/XOutFile $%temp%\test.exe" setup.nsi
Run Code Online (Sandbox Code Playgroud)

(运行Makensis /?将显示类似的示例,/ X可用于执行任何NSIS命令)

makensis.nsi示例使用另一种策略,指定命令行上的outfile是optional(/DOutFile=foo.exe makensis.nsi),脚本使用带有硬编码回退的!ifdef ...