【问题标题】:InstallShield 2010 Installs to Program Files (x86) when Program Files (64-bit) selected选择 Program Files(64 位)时 InstallShield 2010 安装到 Program Files (x86)
【发布时间】:2015-03-27 04:05:29
【问题描述】:

我有一个非常基本的 InstallShield 安装程序。它将一堆瓷砖丢到 TARGETDIR。如果我将目标目录指定为几乎任何目录,这就是文件被删除的地方。 (例如,如果我指定 C:\temp,那是文件出现的地方。)

奇怪的是,如果我在“Program Files (x86)”下指定一个子目录作为目标目录,文件就会安装到“Program Files”。我(显然)在 64 位机器上。

这是 InstallShield 中的错误吗?有解决办法吗?我知道我的客户(安装程序的消费者)是否必须将它安装到 Program Files 或特定于 x86 的 Program Files(它应该被放到现有应用程序的目录中)。

理想情况下,客户端计算机上有一个注册表项,指示将我的东西安装到哪里;如果我可以利用这一点,那正是我想要做的。

【问题讨论】:

  • 您的安装程序是 32 位还是 64 位?

标签: installshield-2010


【解决方案1】:

原来我的组件设置为安装到ProgramFiles。我需要将它们更改为安装到ProgramFiles64。为此:

  • 转到您的组件视图(安装设计器)
  • 一一点击每个组件
  • General 下,查找64-Bit Component 并将其更改为Yes

解决了。

【讨论】:

    【解决方案2】:

    通常 64 位软件包使用 64 位位置。因此,即使您以某种方式设法在“Program Files (x86)”中安装了 64 位软件包,这也是不正确且不合逻辑的。

    在 64 位机器上,64 位产品使用“Program Files”,32 位产品使用“Program Files (x86)”。您可以在此处阅读更多相关信息:

    所以如果你想安装在“Program Files (x86)”中,你可以使用32位的包。

    关于您的实际问题,很可能 InstallShield 或 Windows 正在将您的应用程序文件重定向到正确的位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-05
      • 2016-10-25
      • 1970-01-01
      • 1970-01-01
      • 2017-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多