kod, nazwa płyty głównej

0

Jak wydobyć w Windows dane o sprzęcie, np.:

  • nazwa płyty gółwnej,
  • procesor - typ, szybkość MHz
  • nazwa, data biosu
  • karta grafiki
    itp.

Próbowałem mierzyć szybkość proc., ale to różnie wychodzi na niektórych komputerach,
system oszczędza energię i zwalnia coś tam (nawet na full priorytetach).

0

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;

}

0

Ups, doublepost mi się zrobił

0

A w tym nowszym windows - wiśta czy jakoś tak - pójdzie to?
Bo np. w Win98 były inne klucze do tych danych: ENUM\Root*PNP...

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0