我们正在运行32位和64位的Windows XP专业版服务包3。我们使用WMI来获取BIOS制造商和型号,但我们真的更喜欢使用Win32 API或汇编语言或WMI或COM之外的其他方法。我们非常欢迎代码示例。
答案 0 :(得分:3)
您可以在SMBIOS内存中进行映射并进行解析。您想要的大部分信息都在那里。这可以通过任何可以访问系统内存映射原语的语言来完成。
此外,此document包含有关可用于查询SMBIOS的Win32函数的信息。
答案 1 :(得分:2)
它位于HKEY_LOCAL_MACHINE / HARDWARE / DESCRIPTION / System的注册表中
您有SystemBiosVersion,SystemBiosDate等
此外,还有一个名为BIOS的子键,它有更多信息,如BIOSVendor和BIOSVersion。
根据谁构建系统,您还应该能够获得BaseBoardManufacturer和其他很酷的信息。
<强>更新强>
您可以查看this link。这是VB代码。他们试图从注册表中读取它,但是失败后又回退到从内存地址中提取字符串数据。在这种情况下,版本为&amp; HFE061,日期为&amp; HFFFF5。
答案 2 :(得分:0)
DmiDecode for Windows可以做到这一点。
答案 3 :(得分:0)
codeproject中有一篇文章,其源代码使用API调用GetSystemFirmwareTable来检索SMIBIOS信息。链接:http://www.codeproject.com/KB/system/SMBIOS_Peek.aspx