1

我有一个简单的 inno-setup 脚本,它允许我的安装程序根据 Is64BitInstallMode 值安装程序的 32 位或 64 位版本。这很好用,但我想为用户提供安装 32 位版本的选项,即使他们在 64 位 Windows 上也是如此。我希望在选择应用程序安装路径之前做出选择,以便它可以根据他们的选择默认为 32 位或 64 位程序文件文件夹。如果它们在 32 位窗口上,我也想完全避免这个问题。我一直在玩各种功能,但还没有想出办法来做到这一点。如果我不能轻松做到这一点,我将只进行两次单独的安装(我正在尝试确定最有意义的方法!)非常感谢任何建议!

4

1 回答 1

2

我实际上还没有完成以下操作,但这是我要尝试的:

  1. 您需要一个新的安装程序页面,允许用户选择是安装 32 位还是 64 位版本(此页面应仅在 64 位 Windows 上可见)
  2. 您需要一个变量来保存用户选择的“bittyness”指标。它应该在 32 位系统上初始化为 32 位,在 64 位系统上初始化为 64 位,具体取决于Is64BitInstallMode.
  3. 在 1. 中的页面完成后,您应该将 2. 中创建的变量更新为反映用户选择的值。
  4. 将 32 位和 64 位版本的文件添加到安装程序
  5. 添加一个新函数,true如果应该安装 64 位版本,则返回(例如Install64BitVersion
  6. 添加一个新函数,true如果应该安装 32 位版本,则返回(例如Install32BitVersion
  7. 更改部分中的File条目以Files有条件地安装:

这是该Files部分的示例:

[Files]
Source: 32bitexe.exe; DestDir: {...}; Check: Install32BitVersion
Source: 64bitexe.exe; DestDir: {...}; Check: Install64BitVersion
于 2012-04-04T11:13:07.903 回答