32位应用程序访问64位注册表
我有一个用 32 位编写的 OS Shell,它正在替换 Vista 计算机的 Explorer.exe。 我运行一个同样用 32 位编写的实用程序,它允许在 Explorer shell 和 My shell 之间切换。由于某些机器是基于 64 位的,我无法更改 HKLM\Microsoft\current\shell 密钥(缩写的 reg 密钥)。我最终被 WOW64 子密钥重定向拦截..并且实际上对 shell 密钥的更改没有发生。微软关于实时重定向的废话并不完全正确。这是一键,除非重新启动整机,否则不会重定向。
所以我正在寻找一种解决方案来更新重定向的密钥并加载它。
Shell 替代品是一款销售点软件。我的 GUI 实用程序将仅运行 32 位命令提示符或批处理文件作为 32 位运行。
我可以从 32 位执行或调用另一个批处理文件(例如 64 位)吗?
I have an OS Shell written in 32bit that is replacing the Explorer.exe of a Vista machine.
I run a utility which is also written in 32bit, which allows to switch between the Explorer shell and My shell. With some of the machines being 64bit based I can not Alter the HKLM\Microsoft\current\shell Key (short formed reg key). I end up getting intercepted by the WOW64 subkey redirection.. and effectively the changes to the shell key do not take place. Microsofts BS about realtime Redirection is not exactly true. That is one key that does not redirect unless you restart the whole-machine.
So I am looking for a solution to Either UPDATE that redirected key and have it load.
The Shell replacement is a Point of Sales software. My GUI utility will run 32bit command prompts only or batch files run as 32bit..
Can I Execute or call another batch file like a 64bit from a 32bit ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
有关如何访问的详细信息,请查看 MSDN您想要的确切蜂巢
Check out MSDN for details on how to access the exact hive you want
查看 MSDN 上的这篇文章,了解访问备用注册表查看。这应该提供一种从 32 位进程修改 64 位密钥的方法,但您需要用 C 或 C# 编写代码(或通过 WMI 进行)。
Take a look at this article on MSDN for Accessing an Alternate Registry View. This should provide a way to modify the 64bit key from a 32bit process, but you will need to write code wither in C or C# (or do it through WMI).