I use ArchitecturesInstallIn64BitMode=x64
and it works fine on 64-bit Vista/Win7, but on XP x64 it causes problems (regserver fails), so I want to set it only if the OS is not XP x64.
Is that possible?
I use ArchitecturesInstallIn64BitMode=x64
and it works fine on 64-bit Vista/Win7, but on XP x64 it causes problems (regserver fails), so I want to set it only if the OS is not XP x64.
Is that possible?
无法有条件地设置ArchitecturesInstallIn64BitMode
指令,也无法决定是否要以任何方式从脚本以 32 位或 64 位安装模式运行安装程序(甚至ArchitecturesAllowed
不能有条件地设置)。我建议作为您的问题的解决方法是使用RegisterServer
从代码传递到其第一个参数条件的函数,当您将在 64 位 Vista 以上系统上时返回 True。使用参考中的代码,它可能看起来像这样(以下伪代码应将 OCX 扩展注册为 64 位,仅在上面装有 Windows Vista 的 64 位系统上):
RegisterServer(IsWin64 and (GetWindowsVersion >= $06000000),
ExpandConstant('{sys}\hhctrl.ocx'), False);