Szybkość procesora odczytasz z rejestru:
HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\0~MHZ
Nazwa też tam siedzi:
HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\0\ProcessorNameString
BIOS:
HKLM\HARDWARE\DESCRIPTION\System\SystemBiosVersion
HKLM\HARDWARE\DESCRIPTION\System\SystemBiosDate
Karta graficzna/karty:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class{4D36E968-E325-11CE-BFC1-08002BE10318}\0000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class{4D36E968-E325-11CE-BFC1-08002BE10318}\0001
Z płytą główną nie wiem jak pomóc
Odczytywanie danych z rejestru (przykład zlicza ilość procesorów logicznych w systemie):
int GetProcessorCount() {
WCHAR buffer[64];
DWORD len;
CRegKey key;
long err = key.Open(HKEY_LOCAL_MACHINE, _T("HARDWARE\\DESCRIPTION\\System\\CentralProcessor"), KEY_READ);
if (err == ERROR_SUCCESS) {
int i = 0;
while(1) {
len = 64*sizeof(WCHAR);
err = key.EnumKey(i, buffer, &len);
if (err==ERROR_NO_MORE_ITEMS) {
key.Close();
return i;
}
i++;
}
}
return 1;
}