CRegKey Key;
if ( ERROR_SUCCESS == Key.Open(HKEY_LOCAL_MACHINE, keyPath.c_str()) )
{
wchar_t subKeyName[MAX_PATH];
DWORD dwLength = MAX_PATH;
for(DWORD i = 0; Key.EnumKey(i, subKeyName, &dwLength) != ERROR_NO_MORE_ITEMS; dwLength = MAX_PATH, i++)
{
CRegKey subKey;
wstring subKeyPath;
subKeyPath = keyPath+ L"\\" + subKeyName;
if( ERROR_SUCCESS == subKey.Open(HKEY_LOCAL_MACHINE, subKeyPath .c_str()))
{
//wstring wsDispalyName;
//获取DisplayName的值
//CUtils::QueryRegkeyStringValue(subKey,L"DisplayName",wsDispalyName);
TCHAR DisplayName[MAX_PATH];
ULONG len;
if (subkey.QueryStringValue(L"DisplayName",DisplayName,&len) != ERROR_SUCCESS)
{
return;
}
subKey.Close();
}
}
}