Inno Setup-根据文件版本中止编译

时间:2018-11-06 03:01:29

标签: inno-setup

我想在Inno Setup中添加一个检查,以确保我的exe文件版本始终与安装程序的版本匹配。有没有办法通过预处理器做到这一点?

所以想法是,如果exe版本与我在Inno Setup中设置的版本不匹配,则会中止编译。

1 个答案:

答案 0 :(得分:1)

定义您的版本,并使用 GetFileVersion()预处理程序命令将.exe文件与之进行比较:

#define Version "1.5.0.0"

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
OutputDir=userdocs:Inno Setup Examples Output

[Files]
Source: "MyProg.exe"; DestDir: "{app}"
#if (GetFileVersion("MyProg.exe") != Version)
#error File version does not match!
#endif 

“#error”停止编译并显示消息。

这是从Inno Setup Examples目录中的Example1.iss修改的。