5
我想通过外部传递版本号推广安装文件。我希望能够做到这一点:如何根据命令行参数条件编译NSIS脚本?
makensis myscript.nsi parameter=value
,然后读了剧本中的参数,因此使用相同的脚本我可以生成不同版本的可执行文件。我发现this & this,但它们似乎是将命令行参数传递给生成的setup.exe。这是可能的,以及如何?
我想通过外部传递版本号推广安装文件。我希望能够做到这一点:如何根据命令行参数条件编译NSIS脚本?
makensis myscript.nsi parameter=value
,然后读了剧本中的参数,因此使用相同的脚本我可以生成不同版本的可执行文件。我发现this & this,但它们似乎是将命令行参数传递给生成的setup.exe。这是可能的,以及如何?
可以符号全局定义列表从command line使用/ d开关添加:
makensis /DMyVersion="1.0.1" install.nsi
然后你可以使用$使用它们{}语法:
!ifdef MyVersion
StrCpy $Version "${MyInstallerName}"
!else
StrCpy $Version "1.0.0"
!endif
也可能的兴趣是这个SO问题中讨论的GetVersion插件:NSIS - put EXE version into name of installer
看看这个答案http://stackoverflow.com/a/2790515/150166 –
链接答案做你想做的。我不会投票结束这个问题,因为问题的标题和目标与您的问题有很大不同。 –
@DavidHall:它有什么不同?安装程序名称是您只能在编译时设置的属性!目标是几乎相同... – Anders