Hej!
Mam pytanie jak pobrać informacje na temat modelu procesora (czy to jest Pentium 3 czy Celeron D itp).
na razie udało mi się uzyskać info na temat szybkości w MHz procesora
AnsiString SzybkoscProcesora_Odczytaj()
{
AnsiString sMHz;
char Buffer[_MAX_PATH];
DWORD BufSize = _MAX_PATH;
DWORD dwMHz = _MAX_PATH;
HKEY hKey;
long lError = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
"HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0",
0,
KEY_READ,
&hKey);
if(lError != ERROR_SUCCESS)
{// if the key is not found, tell the user why:
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
lError,
0,
Buffer,
_MAX_PATH,
0);
ShowMessage(Buffer);
return "N/A";
}
RegQueryValueEx(hKey, "~MHz", NULL, NULL, (LPBYTE) &dwMHz, &BufSize);
sMHz = IntToStr(dwMHz);
return sMHz;
}
Ewentualnie informacje też są zapisane w postaci zmiennej środowiskowej
Label1->Caption = getenv("PROCESSOR_IDENTIFIER");
ale nie są to takie o które mi chodzi (nie pokazuje CELERON D) tylko x86 15 Model 6 Stepping 4, GenuIntel
Jest jeszcze jedna możliwość (wyswietla klase procesora, bardzo ogolnie, 386, 486 i 586)
SYSTEM_INFO siSysInfo;
// Kopiuj informacje o HARDWARE do struktury siSysInfo
GetSystemInfo(&siSysInfo);
Typ_Mikroprocesora_Edit1->Text = siSysInfo.dwProcessorType;
Nigdzie nie moge znaleźć funkcji która by pokazała model procesora (Pentium1, Pentium 2, Pentium 3, Celeron itp)...