Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows InstallShield自定义操作失败,因为用户正在64位程序文件目录中安装?_Windows_Installshield Le - Fatal编程技术网

Windows InstallShield自定义操作失败,因为用户正在64位程序文件目录中安装?

Windows InstallShield自定义操作失败,因为用户正在64位程序文件目录中安装?,windows,installshield-le,Windows,Installshield Le,我有一个32位的遗留应用程序,允许用户指定安装路径作为安装的一部分(非常普通的东西…)。我还定义了一个自定义操作,在初始安装完成后运行另一个所需软件位的静默后台安装 当用户安装到32位程序文件(x86)目录时,一切正常 我遇到的问题是,当用户指定64位安装目录时,Windows会自动在后台更改安装路径以使用(x86)Program Files文件夹,这很好,除了在初始安装完成后使用相同INSTALLDIR属性的自定义操作仍然认为它应该是64位“Program Files”路径,因此当自定义操作找

我有一个32位的遗留应用程序,允许用户指定安装路径作为安装的一部分(非常普通的东西…)。我还定义了一个自定义操作,在初始安装完成后运行另一个所需软件位的静默后台安装

当用户安装到32位程序文件(x86)目录时,一切正常

我遇到的问题是,当用户指定64位安装目录时,Windows会自动在后台更改安装路径以使用(x86)Program Files文件夹,这很好,除了在初始安装完成后使用相同INSTALLDIR属性的自定义操作仍然认为它应该是64位“Program Files”路径,因此当自定义操作找不到它要查找的EXE文件时,安装失败

我的程序本质上与另一个开发人员在此描述的程序完全相同,但从未在该论坛中解决:

有人知道什么是有效的解决方法吗?似乎很基本的一点是,安装程序不应该因为用户认为应该安装到“C:\Program Files\Appname”而不是“C:\Program Files(x86)\Appname”而失败


我确实仔细阅读了这里的类似问题,但我没有看到其他人使用自定义操作处理此问题。

根据我的经验,您需要更改为64位模板才能安装到程序文件。树中的常规信息>模板摘要>更改为x64;1033每个目录中至少需要将一个文件标记为64位。它是组件属性上的复选框。确保检查您的自定义操作是否仍然符合主要升级的运行条件。我目前对此有意见。我的主要升级设置为全部删除,并且无论脚本删除部分的条件如何,它都会运行所有自定义操作。

从哪里可以获取模板摘要?我用的是限量版,我在任何地方都看不到。