的Windows 10的注册表访问

问题描述:

我有一个旧的Windows程序,从注册表中读取信息,像这样:的Windows 10的注册表访问

CRegKey rkey; 

if(rkey.Open(HKEY_LOCAL_MACHINE, "SOFTWARE\\xxx\\yyy", KEY_READ) == ERROR_SUCCESS) 
{ 
    ... 
} 

在Windows 10锁定的用户帐户,失败!

它甚至不能读取注册表,至少不是它的那部分。

我看了微软的支持网站,我找不到它解决这个问题。

任何人都可以指向我的信息,或者只是告诉我,从Windows(C++)程序访问注册表是如何受到UAC在Windows 10中的影响的?

+1

那么,修复你的代码,你不能告诉*为什么*它失败了。谷歌“Windows注册表重定向器”。 –

+0

使用'regedit':在树窗格中右键单击您感兴趣的节点并检查其权限。您的旧Windows程序很可能假设它以管理员权限运行,在Windows 10计算机上它只具有用户权限。 –

+2

您可以指定您尝试访问的注册表项吗? – Asesh

我需要收回这个问题。进一步的调查显示,用户帐户可以在注册表中读取HKLM等,这不是问题。实际上,安装程序已经编写了我在HKCU(当前用户)下寻找的注册表项,其中用户帐户同时具有R和W权限。 ...所以,我不必要地责备Windows 10用户模式。问题似乎是从该计划到另一个计划的沟通没有成功。我们会研究一下。对于在调查中发现问题的原因并不是问题的根源,我表示抱歉。

+0

要撤消该问题,只需将其删除即可。有一个链接可以在你的问题下执行此操作。 – lurker