2009-09-09 69 views
3

閱讀了一些內容後,似乎可以映射SMBIOS內存並解析它。 我不知道如何去做這件事。 我不能使用任何託管代碼,因爲我希望這可以在任何操作系統下編譯。通過C獲取BIOS信息的常用方法

有沒有人有任何代碼示例如何去做這件事?

+0

什麼BIOS信息,你需要什麼?如果您使用的是Windows,可能會有WMI接口暴露它的某些方面。 – reuben 2009-09-10 01:54:43

回答

8

在大多數系統上,它沒有映射到用戶模式可訪問的內存,因此您需要調用一些系統API。您可以撥打GetSystemFirmwareTable

2

對於Linux我想你應該看看的dmidecodesource(GPL)混凝土代碼...

使用和解析的dmidecode輸出可能是你所需要的...

1

我寫了一個可重用的類來閱讀所有SMBIOS的東西。

這是非常乾淨的代碼,具有適當的錯誤處理和易於擴展。 你可以從這個類派生一個類,它使用解析的數據來顯示它或做你想做的任何事情。

您還可以在代碼的註釋中找到實際SMBios文檔的鏈接。

你可以從我的主頁上下載: ftp://ftp.netcult.ch/mirror/elmue/SMBiosClass.zip

Elmue