2015-04-27 85 views

回答

2

的Windows保护这些注册表值,因为它们的变化可能会影响(损伤)很多应用和子系统。代码(正确)试图通过首先从系统获取密钥来解决此问题,以便在不久之后可以中断系统。

显然,你没有写这个代码和GOOGLE了它某处在互联网上。这个问题有正确的在应用程序中的第一个API调用的:

path = L"SOFTWARE\\Classes\\Interface\\{00020400-0000-0000-C000-000000000046}\\ProxyStubClsid32\\"; 
if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, path, 0, regsam, &handleToKey)) 

这种失败,你没有钥匙打开(因为过多的斜杠的)。您应该检查ERROR_SUCCESS的操作状态。由于应用程序尝试在跟踪API调用时使用零句柄,因此您会收到更多错误,并且您获取的API返回代码的解释也不正确,因为您应该在此处获得6(错误句柄)。

有这个固定的,你最终会修改这个值,不过只是另一个这里提醒的是,它很可能会破坏相当数量的已安装应用程序的正常运行。

+0

非常感谢您的信息。我知道修改此值可能会损坏我的Windows,但是由于相同的原因,我需要将注册表项更改为默认值,因为在某些情况下,此值不是默认值,并且某些程序无法正常工作。 – Mario