32bit-64bit - 安装盾2012 : Identify 32 or 64 bit Operating system and install appropriate ActiveX control - Basic msi installer

标签 32bit-64bit installshield installshield-2012

我有一个 ActiveX 控件需要部署在客户端计算机中,我计划通过向客户端提供安装程序来实现此目的。

我已经为 64 位和 32 位操作系统制作了单独的 msi 软件包,并且它可以正常工作。

但是,当涉及 64 位机器时,我遇到了一个问题,因为我有以下要求,

如果是 32 位机器,请安装 32 位 ActiveX 控件。

如果是 64 位机器,请同时安装 32 位和 64 位 ActiveX 控件。

我阅读了很多文章,指出无法使用基本的 msi 安装程序完成混合安装?

可以使用单个 setup.exe 文件来完成此操作吗?

最佳答案

单个 MSI 无法同时将文件或注册表安装到 64 位系统上的 64 位位置并在 32 位系统上运行。因此,假设您的 64 位 ActiveX 控件必须安装到 64 位位置或在 64 位位置注册,则您无法在单个 MSI 中执行此操作。

如果您拥有 InstallShield 2012 的首要版本,这是 Suite(或 Suite/Advanced UI)项目类型的用例之一。您必须创建两个 MSI 文件,并将它们都包含在具有相关资格条件的套件中。 (确切的条件取决于您使 MSI 是独立的还是累积的,但只有当平台具有 x64 架构时,64 位 MSI 才符合资格。)

关于32bit-64bit - 安装盾2012 : Identify 32 or 64 bit Operating system and install appropriate ActiveX control - Basic msi installer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16434840/

相关文章:

installation - 是否可以仅在修复模式下运行自定义操作

windows - 某些 Windows DLL 显然如何同时支持 32 位和 64 位?

ffmpeg 32 位在 av01 格式的 x64 Windows 上崩溃

windows-installer - 如何在卸载期间修改注册表值(基本 MSI 项目)

visual-studio-2015 - 如何在自定义操作序列中安装主应用程序之前对静默安装程序 .exe 文件进行排序?

c# - 加载 32 位 DLL 时出现 BadImageFormatException,目标是 x86

gcc - 从cygwin64编译32位代码

installation - 是否可以在 Installshield 2012 PRQ 中使用逻辑 OR 或否定条件?

visual-studio-2012 - InstallShield 提供 ISEXP : error : -5008 when building setup project in VS 2012