我有一个在cpp中试图读/写某些注册表项的dll。此代码在Windows XP(32位环境)中运行得非常好,但在Windows 7(64位环境)中失败。RegQueryValueEx函数在Windows7上失败
此应用程序访问的注册表项是共享注册表项。这些密钥不是32位注册表缓存(wow32位)或64位注册表缓存的一部分。
请提供您的宝贵意见。
在此先感谢。
小工具
我有一个在cpp中试图读/写某些注册表项的dll。此代码在Windows XP(32位环境)中运行得非常好,但在Windows 7(64位环境)中失败。RegQueryValueEx函数在Windows7上失败
此应用程序访问的注册表项是共享注册表项。这些密钥不是32位注册表缓存(wow32位)或64位注册表缓存的一部分。
请提供您的宝贵意见。
在此先感谢。
小工具
当你说“共享”你的意思,例如在HKLM?只允许升级的应用程序写入Windows 7和Vista上的应用程序。如果这是你的消息,我建议在用户帐户控制或UAC上搜索。
是的,好像* RegQueryValueEx *正在** **写入注册表。 – 2010-06-08 10:20:51
是的,当问题显示“尝试读取/写入某些注册表项”时,我很愚蠢地认为代码可能会写入它们。 – 2010-06-08 12:44:34
也许你应该初始化RegQueryValueEx的最后一个参数“lpcbData”的值。
这:Registry Key Security and Access Rights
IMO你必须检查你使用开放关键的权限设置。删除需要提升权限的设置或在提升模式下运行应用。
失败如何?你会得到什么样的回报值? – 2010-05-06 15:37:48