【问题标题】:Finding available memory slots in C#在 C# 中查找可用的内存插槽
【发布时间】:2011-10-20 03:56:57
【问题描述】:

我想知道如何在 C# 的主板上找到可用的内存插槽和占用的插槽。使用 WMI,我可以找到插槽总数以及记忆棒列表,但在这两种情况下提供的信息,特别是后者,似乎都是通用的,并且会根据主板而有所不同。

基本上,我希望为板上的每个插槽创建一个列表,以及哪些特定的插槽被占用以及采用哪种类型。我想这可能可以通过 WMI 完成,但正如我所说,我似乎无法解决 Win32_PhysicalMemory 中的“DeviceLocator”令人困惑和不确定的问题。

【问题讨论】:

    标签: c# windows wmi


    【解决方案1】:

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

    【讨论】:

    • 我不太明白你想比较什么。唯一似乎有意义的属性是Win32_BaseBoard 类上的 SlotLayout,无论如何它总是返回一个空值。
    【解决方案2】:

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

    看到这个

    【讨论】:

      猜你喜欢
      • 2019-01-26
      • 1970-01-01
      • 1970-01-01
      • 2019-01-03
      • 1970-01-01
      • 2013-09-15
      • 2011-01-02
      • 2018-01-11
      • 2020-11-23
      相关资源
      最近更新 更多