【发布时间】:2012-04-10 15:46:22
【问题描述】:
我正在尝试使用 WMI 获取一些系统信息
,但问题是当我想获取例如图形卡信息时......我得到了许多驱动程序(真实和虚拟)
ManagementObjectSearcher searcher = new ManagementObjectSearcher("select Name from " + key);
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine(share["Name"].ToString());
}
结果是:
Radmin 镜像驱动程序 v3
ATI Mobility Radeon HD 5650
LogMeIn 镜像驱动程序
PCI GDIHOOK5
所以我决定编辑查询以仅获取真实的查询。在这种情况下,真实的查询应该具有不等于 null 的 AdapterRam
ManagementObjectSearcher searcher = new ManagementObjectSearcher("select Name,AdapterRAM from " + key+" where AdapterRAM is not null");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine(share["Name"].ToString());
Console.WriteLine(share["AdapterRAM"].ToString());
}
结果是:
ATI Mobility Radeon HD 5650
字节数
有没有更好、更通用的方法来只获取 WMI 中的真正适配器?
【问题讨论】:
标签: c# wmi-query system.management