Domanda

Dopo aver letto alcune cose sembra che sia possibile mappare la memoria SMBIOS e analizzarla. Non ho idea di come procedere. Non riesco a utilizzare alcun codice gestito in quanto vorrei che fosse compilabile con qualsiasi sistema operativo.

Qualcuno ha qualche esempio di codice su come procedere?

È stato utile?

Soluzione

Sulla maggior parte dei sistemi, non è mappato nella memoria accessibile in modalità utente, quindi è necessario chiamare alcune API di sistema.

Su Windows, puoi chiamare GetSystemFirmwareTable .

Altri suggerimenti

Per Linux suppongo che dovresti dare un'occhiata al dmidecode source (GPL) per codice concreto ...

L'uso e l'analisi dell'output di dmidecode può essere tutto ciò che serve ...

Ho scritto una classe riutilizzabile per leggere tutte le cose SMBIOS.

È un codice molto pulito con una corretta gestione degli errori e facile da estendere. È possibile derivare una classe da questa classe che utilizza i dati analizzati per visualizzarla o fare ciò che si desidera con essa.

Trovi anche un link alla documentazione SMBios effettiva nei commenti del codice.

Puoi scaricarlo dalla mia homepage: ftp://ftp.netcult.ch/mirror/elmue/SMBiosClass.zip

Elmue

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top