我试图以标准用户身份从 Windows 7 上的 HKEY_CURRENT_USER\Software\Classes 读取一个值,虽然密钥存在,但我得到一个错误。下面的两个代码都没有成功:
l = RegOpenKeyEx(HKEY_CURRENT_USER, L"Software\\Classes", 0, KEY_READ, &hKey);
// RegOpenKeyEx doesn't success either
l = RegOpenKey(HKEY_CURRENT_USER, L"Software\\Classes", &hKey);
这段代码位于一个由应用程序调用的dll中,该应用程序做很多事情(我不知道它所做的一切)。
但是,在同一台计算机上使用相同帐户的一个简单的应用程序只有RegOpenKey可以完美运行......
谁能告诉我可能导致问题的原因以及两者之间的区别?测试应用程序是用 c++ 编写的,而 dll 是用 c 编写的。
编辑:问题已解决,只需删除 L“Software\Classes”之前的“L”...