如何检查WMI查询是否返回0行?

时间:2016-03-15 15:31:20

标签: c# wmi

我正在研究一个明显错误的C#代码。 我正在尝试使用WMI查询获取pendrive数据,并在继续操作后,检查查询是否返回0行以避免错误。

ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_USBDevice");
ManagementObjectCollection drive = searcher.Get();
if (drive == null)
{
    MessageBox.Show("Failed to read data.");
    Application.Exit();
}

显然drive == null方法不起作用。我该如何正确检查? 而且,这是获取pendrive数据的正确方法吗?

2 个答案:

答案 0 :(得分:3)

让它变得万无一失:

wordMap.getOrDefault(word, 0)

答案 1 :(得分:2)

使用Count

if (drive.Count == 0)
{
    MessageBox.Show("Failed to read data.");
    Application.Exit();
}