在C#中查找可用的内存插槽

时间:2011-10-20 03:56:58

标签: c# windows wmi

我想知道如何在C#中找到可用的内存插槽与主板上的插槽。使用WMI,我可以找到插槽总数和内存条列表,但两种情况下提供的信息,特别是后者,它看似通用,并根据主板而变化。

基本上我想要在电路板上的每个插槽中创建一个列表,以及采用哪种特定的列表。我想这可以用WMI来完成,但正如所说,我似乎无法解决Win32_PhysicalMemory中“DeviceLocator”令人困惑和不确定的问题。

2 个答案:

答案 0 :(得分:2)

将Win32_PhysicalMemory提供的信息与Win32_BaseBoard中的“Manufacturer”和“Product”字段等信息结合使用,可以创建一组已知的插槽,并将Win32_PhysicalMemory中的“DeviceLocator”字段与它进行比较。不理想,但这是唯一明显的解决方案。

答案 1 :(得分:1)

使用Win32,您应该能够调用GetSystemFirmwareTable从固件表提供程序(SMBIOS表)中检索指定的固件表。虽然Pinvoke.NET没有为这个非托管条目提供任何内容,但您可以通过这种方式进行搜索。您可以在System Management BIOS (SMBIOS)网站上找到一些帮助。

见这个