c# - 获取我的 RAM 的制造商名称(WMI 未获取此信息)

标签 c#

我需要获取有关 RAM 模块的完整信息。我试图通过使用 WMI 来获取它:

ManagementObjectSearcher searcher12 =
    new ManagementObjectSearcher("root\\CIMV2",
    "SELECT * FROM Win32_PhysicalMemory");

            Console.WriteLine("------------- Win32_PhysicalMemory instance --------");
            foreach (ManagementObject queryObj in searcher12.Get())
            {
                Console.WriteLine("BankLabel: {0} ; Capacity: {1} Gb; Speed: {2}; Manufacturer: {3}; Serial Number: {4}", queryObj["BankLabel"],
                                  Math.Round(System.Convert.ToDouble(queryObj["Capacity"]) / 1024 / 1024 / 1024, 2),
                                   queryObj["Speed"], queryObj["Manufacturer"], queryObj["Name"]);
            }

但它对我没有帮助,它根本没有这些信息。我怎样才能得到这些信息?

最佳答案

以上代码适用于 Windows 10。我将以上代码复制并粘贴到控制台应用程序中。

我必须添加对 System.Management 的引用。

当我运行它时,我得到以下输出:

------------- Win32_PhysicalMemory instance --------
BankLabel: BANK 0 ; Capacity: 4 Gb; Speed: 1333; Manufacturer: Hynix; Serial Number: Physical Memory
BankLabel: BANK 1 ; Capacity: 4 Gb; Speed: 1333; Manufacturer: Unknown; Serial Number: Physical Memory

关于c# - 获取我的 RAM 的制造商名称(WMI 未获取此信息),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41047307/

相关文章:

c# - 有没有办法将设计器文件与其 cs 文件重新绑定(bind)/关联?

C# 工厂设计模式

c# - 为什么 AutoIt 成功地将输入发送到 directx 应用程序而 SendInput/SendMessage 却没有?

c# - 使用 AJAX 将字符串传递给 Controller

c# - C# 中的单元测试私有(private)方法

c# - 如何使用 asp.net mvc3 和 nhibernate 提高 Web 应用程序性能

c# - 模棱两可的引用

c# - 从 cookie 创建和读取列表<>

c# - 使用 C# 从 BitmapData 裁剪区域

c# - 如何在此代码中放置防护属性?