想不到会卡在这里
一个简单的读取注册表的程序,每次都是“无法获取相应键值”,明明是有那个键值的呀,困惑ing...
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
HKEY hKey;
TCHAR SubKeyName[]="SOFTWARE\\Microsoft\\Windows\\CurrentVersion";
TCHAR ValueName[]="ProductId";
DWORD dwType=REG_SZ;
LPSTR ValueData;
DWORD BufferSize=sizeof(ValueData);
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,SubKeyName,0,KEY_READ,&hKey)!=ERROR_SUCCESS)
{
MessageBox(NULL,"无法打开相应子键","Windows产品序列号查看器",MB_OK);
return -1;
}
if(RegQueryValueEx(hKey,ValueName,0,&dwType,(LPBYTE)ValueData,&BufferSize)!=ERROR_SUCCESS)
{
MessageBox(NULL,"无法获取相应键值","Windows产品序列号查看器",MB_OK);
return -1;
}
MessageBox(NULL,ValueData,"Windows产品序列号查看器",MB_OK);
RegCloseKey(hKey);
return 0;
}