Hallo
Warum gibt dieser Code immer 0 zurück und nicht die korrekte MHz Zahl?
Ich bin langsam am verzweifel, hab schon etwa 100 verschieden Varianten probiert und es hat einfach nichts geklappt.
Manchmal waren es auch einfach irgendwelche kryptischen Zeichen :-(
Hab etwa 4 verschieden Foren gefunden, wo diese Problem mal diskutiert wurde und es konnte immer gelöst werden.. nur bei mir geht das nicht :-(
Ihr seid meine letzte Hoffnung!
std::string CHardwareInfo::GetCpuSpeed(void)
{
HKEY hKey;
std::string strString;
std::stringstream strStream;
DWORD dwValue = 0;
DWORD dwSize = sizeof(dwValue);
DWORD dwType;
if( ERROR_SUCCESS != RegOpenKeyEx(HKEY_LOCAL_MACHINE,
"Hardware\\\\Description\\\\System\\\\CentralProcessor\\\\0",
0,
KEY_QUERY_VALUE,
&hKey ))
{
return "Unknown";
}
if( ERROR_SUCCESS != RegQueryValueEx (hKey, "~MHz",
NULL, &dwType,
(LPBYTE)dwValue, &dwSize))
{
MessageBox(NULL,"RegQueryValueEx MHz: Failed","ERROR", MB_OK);
return "Unknown";
}
float fValue = (float)dwValue;
strStream strStream >> strString;
return strString;
}
Schon mal vielen Dank an alle, die sich das etwas genauer anschauen!
Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge
Welchen Compiler benutzt Du, und auf welcher Plattform?