【问题标题】:InstallShield adding diffrerent prerequisite for x86 and x64InstallShield 为 x86 和 x64 添加了不同的先决条件
【发布时间】:2014-08-11 17:24:40
【问题描述】:

我想根据平台使用 InstallShield 添加不同版本的 Crystal Reports 作为安装先决条件。对于 x86 应安装 32 位版本,对于 x64 - 64 位。 我应该添加什么样的条件才能这样做?我发现我可以选择特定的操作系统作为条件,但没有选项只能选择 32 位或 64 位。 提前致谢。

UPD1:在 InstallShield 中我可以选择以下类型的条件:

  1. 检查注册表项是否存在。我想检查 WoW6332Node 但后来我发现这个节点可以在 32 位操作系统中列出: http://support.microsoft.com/kb/2582176我也发现可以 检查一些注册表项 https://superuser.com/questions/290906/check-if-32-or-64-bit-windows-os-via-registry/290929 但我不确定它们是否存在于所有 Windows 版本中。

  2. 检查某个文件是否存在。我可以在 Program Files 中检查一些文件 (x86) 文件夹来检测 64 位操作系统,但这不是一个好主意 意见。

【问题讨论】:

    标签: installshield


    【解决方案1】:

    我认为您可以为此使用 VersionNT64 属性。 更多详情可在这找到: http://msdn.microsoft.com/en-us/library/aa372497(v=vs.85).aspx

    编辑:从文档中可以看出,此属性仅在 64 位计算机上设置,否则为空。

    编辑:13.VIII.2014 选择先决条件以将其添加到您的安装包后,已分配了一项功能。 因此,您可以进入“功能”视图并选择创建的功能。我可以看到它有一个 Condition 字段,很可能在那里您可以使用 VersionNT64 属性。

    【讨论】:

    • 谢谢!但是如何在先决条件下使用这个属性呢?我使用 InstallShield 2012,唯一的条件类型是:1) 注册表项/条目 - 检查是否存在或具有指定值 2) 检查文件是否存在 3) 安装程序在指定平台上运行 - 我可以选择操作系统,但是我必须选择所有64位操作系统,不方便。
    • 在我的功能视图中只有一个主要功能。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多