我正在编写一个要求以32位模式运行的程序。该程序读取注册表的文件路径,其中一些是使用Windows环境变量(例如“%PROGRAMFILES%\ MySoftware”)编写的。
我的问题是,当我使用ExpandEnvironmentStrings()时,由于我的可执行文件是32位,但我正在寻找的路径是“ C:\ Program Files \ MySoftware”,因此我得到了“ C:\ Program Files(x86)\ MySoftware”。
关闭Wow64不会影响ExpandEnvironmentStrings()。
我的解决方案是编写自己的“ ExpandEnvironmentStrings()”函数,但可能有更好的解决方案。
最佳答案
从Windows 7开始,您将拥有一个%ProgramW6432%,它始终指向64位文件夹。
见WOW64 implemenation details
关于c - 获取ExpandEnvironmentStrings()以返回64位路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46582046/