KEY_WOW64_64KEY 对 32 位 Windows 有影响吗?

发布于 2024-08-08 16:24:07 字数 415 浏览 5 评论 0原文

似乎指定了 KEY_WOW64_64KEY 标志 (参考) 在 32 位 Windows XP 下访问注册表项时没有任何效果 - 也就是说,不会引发错误,并且该注册表项会被打开,就好像您没有打开该注册表项一样设置标志。

我知道 Windows 2000 在遇到此标志时会抛出错误。

我想确保我的应用程序与尽可能多的 Windows 版本(2k 及更高版本)兼容。

是否有 Microsoft 参考资料指定每个版本的 Windows 对此标志的行为?特别是,我想要一些东西来验证我的假设,即它对 2k 以后的 32 位 Windows 完全没有影响。

It appears that specifying the KEY_WOW64_64KEY flag (reference) when accessing a registry key under 32-bit Windows XP has no effect - that is, no error is thrown, and the key is opened as if you hadn't had the flag set.

I know Windows 2000 throws an error when it encounters this flag.

I want to make sure my app is compatible with as many versions of windows (2k and later) as possible.

Is there a Microsoft reference that specifies each version of Windows' behaviour for this flag? In particular, I'd like something that validates my assumption that it has no effect at all on post-2k 32-bit Windows.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

清泪尽 2024-08-15 16:24:07

我无法与 Windows 2000 或 XP 对话,但我知道在 Vista 及更高版本上,如果是 64 位操作系统,则 KEY_WOW64_64KEY 打开 64 位注册表中的注册表项,如果是 32 位操作系统,则打开 32 位注册表中的注册表项。

I can't speak to Windows 2000 or XP, but I know that on Vista and above, KEY_WOW64_64KEY opens the registry key in the 64bit registry if it's a 64bit OS and the 32bit registry if it's a 32bit OS.

影子的影子 2024-08-15 16:24:07

根据此Windows页面:

https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry-key-security-and-access-rights?redirectedfrom=MSDN

两者

KEY_WOW64_32KEY (0x0200)

KEY_WOW64_64KEY (0x0100)

都将在 32- 上被忽略位Windows。

Windows 2000 不支持这些标志。

According to this Windows page:

https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry-key-security-and-access-rights?redirectedfrom=MSDN

Both

KEY_WOW64_32KEY (0x0200)

KEY_WOW64_64KEY (0x0100)

will be ignored on 32-bit Windows.

And those flags are not supported on Windows 2000.

韶华倾负 2024-08-15 16:24:07

我在Windows XP 32位上测试过,看起来工作正常。

I have tested on Windows XP 32 bit, and it seems to work OK.

天邊彩虹 2024-08-15 16:24:07

另外,您通常应该避免使用此键 - WOW64 为 32 位应用程序提供了相当完整的“幻象”;只需在没有此标志的 32 位上正确编写您的应用程序,它仍然可以在 WOW64 上运行。不要尝试使用此标志(和其他机制)来“64 位兼容”。

Also, you should usually be avoiding this key - WOW64 provides a pretty complete "illusion" to 32-bit apps; just write your app properly on 32-bit without this flag, and it will still work on WOW64. Don't try to use this flag (and other mechanisms) to be "64-bit compatible".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文