Advanced Installer读取注册表时将Program Files读取为Program Files (x86)的解决办法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Advanced Installer读取注册表时将Program Files读取为Program Files (x86)的解决办法相关的知识,希望对你有一定的参考价值。

原文:Advanced Installer读取注册表时将Program Files读取为Program Files (x86)的解决办法

今天同事在做安装包的时候,有一个读取注册表路径的需求,需要根据读取的值来写配置文件,按照常规的做法,写好了注册表搜索方法,但是在测试的时候,发现总是会将系统盘下的Program Files\xxx路径读取为Program Files (x86)\xxx,如下图所示:
技术分享
之后测试了如果读取非系统盘下的此路径,不会出现这个问题。
但是这个路径一般情况下都是默认安装在系统盘的,难道必须要求客户安装在非系统盘?这个不现实,抱着这个问题,翻阅了Advanced Installer社区,发现这个问题由来已久,一直以来Advanced Installer都知道这个问题,如下图:
技术分享
这里给出的解决办法,就是将安装包的类型设置为64位或32/64位混合模式,而不能是纯粹的32位安装包。
设置方法如下图:
技术分享
设置好后,再次运行注册表测试,就和原始路径一致了。
技术分享










以上是关于Advanced Installer读取注册表时将Program Files读取为Program Files (x86)的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

advanced installer重新打包教程

Advanced Installer傻瓜式打包教程

advanced installer写注册表时无法写入类型为"DWORD”的,是权限问题?如何解决,请高手指点,谢谢

关于Advanced Installer的几个问题

如何让Advanced Installer制作带有卸载信息的Uninstall000.dat文件?

Advanced Installer怎么用