向HKEY_CURRENT_USER 主键新增加了键"MySoftware",并向其成功添加了多个键值,现想枚举
"MySoftware"下的键值,并不成功
HKEY hOpenKey;
long lResult = 0;
DWORD dwKeyValueType = 0;
DWORD dwKeyValueLength =0;
LPCTSTR keyName = L"MySoftware";//\\UserKey
lResult = RegOpenKeyEx(HKEY_CURRENT_USER,keyName,0,0,&hOpenKey);
if(lResult == ERROR_SUCCESS)
{
CString strKeyName;
TCHAR szKeyName[256];
ZeroMemory(szKeyName,256*2);//lstrcpy(szKeyName,_T("MySoftware\\UserKey"));
DWORD i=1;
do
{
DWORD dwKeyNameLength =256*2;
lResult = RegEnumKeyEx(hOpenKey,i,szKeyName,&dwKeyNameLength,0,NULL,NULL,NULL);
if(lResult != ERROR_SUCCESS)
{
break;
}
strKeyName = szKeyName;
lstKeyName.AddTail(strKeyName);
i++;
} while(lResult != ERROR_NO_MORE_ITEMS);
}
如果将RegEnumKeyEx()中参数hOpenKey换为HKEY_CURRENT_USER,可以枚举HKEY_CURRENT_USER下的键值,枚举"MySoftware"下的键值就不成功,请各位指点,谢谢!
先看看想枚举的东东在,还是不在?如果不在,当然不成功。
要枚举的东西再呀,可以通过RegQueryValueEx获取要枚举的键和键值
枚举key和枚举value是不一样的。
lz是MySoftware插入了key还是value?
在MySoftware中插入了几个key和对应的value ,我想枚举MySoftware下的key
没有任何错误,就是枚举不到键值,要是将RegEnumKeyEx()中参数hOpenKey换为HKEY_CURRENT_USER,可以枚举HKEY_CURRENT_USER下的键值