Inno Setup:如何根据系统位数自动安装对应版本程序

目前在 Windows 系统中有 32 位和 64 位之分,那么我们在开发或者使用程序时也有 32 位程序和 64 位程序。有时候为了方便,我们在开发的程序想要把这些文件集成在一个安装包内,那么使用 Inno Setup 就可以轻松实现。

默认情况下我们使用 Inno Setup 打包的只能为一种应用,而通过修改脚本代码就可以在一个安装包中包含 32 位或 64 位文件,然后在安装时会根据系统自动释放对应系统的应用程序。

下面就和一起看看 Inno Setup 包含 32 位或 64 位程序的脚本代码吧。

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

// -64BitTwoArch.iss-
// 演示如何安装为两个不同的程序构建的程序
// 使用单个安装程序的体系结构(x86 和 x64)。

// 有关创建 .ISS 脚本文件的详细信息,请参见文档!

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
UninstallDisplayIcon={app}\MyProg.exe
Compression=lzma2
SolidCompression=yes
OutputDir=userdocs:Inno Setup Examples Output
ArchitecturesInstallIn64BitMode=x64
// “ ArchitecturesInstallIn64BitMode = x64” 请求在 x64 上以“ 64 位模式”完成安装,这意味着它应使用本机 64 位 Program Files 目录和注册表的 64 位视图。
// 在所有其他体系结构上,它将以“ 32 位模式”安装。
// 注意:我们未设置 ProcessorsAllowed,因为我们希望此安装在所有体系结构上运行(包括 Itanium,因为它也能够运行 32 位代码)。

[Files]
// Install MyProg-x64.exe if running in 64-bit mode (x64; see above),
// MyProg.exe otherwise.
Source: "MyProg-x64.exe"; DestDir: "{app}"; DestName: "MyProg.exe"; Check: Is64BitInstallMode
Source: "MyProg.exe"; DestDir: "{app}"; Check: not Is64BitInstallMode
Source: "MyProg.chm"; DestDir: "{app}"
Source: "Readme.txt"; DestDir: "{app}"; Flags: isreadme

[Icons]
Name: "{group}\My Program"; Filename: "{app}\MyProg.exe"

以上就是 Inno Setup 通过标识不同文件中的版本来在安装的时候释放对应文件,从而可以达到一个安装包包含 32 或 64 位程序文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

执刀人的工具库

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值