有条件地设置ArchitecturesInstallIn64BitMode

时间:2012-10-18 08:22:46

标签: windows-xp inno-setup

我使用ArchitecturesInstallIn64BitMode=x64并且它在64位Vista / Win7上工作正常,但在XP x64上它会导致问题(regserver失败),所以我只想在操作系统不是XP x64时设置它。 / p>

这可能吗?

1 个答案:

答案 0 :(得分:1)

无法有条件地设置ArchitecturesInstallIn64BitMode指令,也无法决定是否要以任何方式从脚本以32位或64位安装模式运行设置(即使ArchitecturesAllowed也无法有条件地组)。我建议作为您的问题的解决方法是使用代码传递到其第一个参数条件的RegisterServer函数返回True,当您在64位Vista上面的系统。使用来自引用的代码,它可能看起来像这样(以下伪代码应该只在64位系统上将OCX扩展注册为64位上面的Windows Vista):

RegisterServer(IsWin64 and (GetWindowsVersion >= $06000000), 
  ExpandConstant('{sys}\hhctrl.ocx'), False);