【发布时间】:2010-10-23 16:18:42
【问题描述】:
您好,我正在尝试读取一个注册表值,它为我提供了 firefox.exe 的路径。 这是存储在
HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox 3.0.10\bin
(版本号可以在别处找到)
但我似乎无法让 RegOpenKeyEx 为以下任何内容返回 ERROR_SUCCESS
HKEY_LOCAL_MACHINE
所以这个测试失败了:
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("\\SOFTWARE"),0,KEY_QUERY_VALUE,&keyHandle) == ERROR_SUCCESS)
当此测试通过时:
if(RegOpenKeyEx(HKEY_CLASSES_ROOT,TEXT("\\Shell"),0,KEY_QUERY_VALUE,&keyHandle) == ERROR_SUCCESS)
【问题讨论】:
-
RegOpenKeyEx 失败后GetLastError() 的值是多少?
-
不要检查GetLastError(),这个函数没有设置。错误代码在返回值中,所以将它分配给一个变量。