1
我收到一些我不太了解的错误。我希望有人能帮助我。WMI查询 - System.Management.ManagementException
我得到的第一个例外是'in'中的System.Management.ManagementException
。
下一个是'设备'上的索引超出范围。真正让我困惑的是,当它不接受传递给它的变量时,它就起作用了。当我将它考虑在内以使它更加灵活时,它就打破了。
有人能指出我正确的方向吗?
财产和win32Class从主程序传递到这个类
这里的我传递什么和如何
static void Main(string[] args)
{
GatherSystemINfoWMI.GetPropertyValue("name", "Win32_CDROMDrive");
}
//这就是我把它传递给
public static void GetPropertyValue(string property, string win32Class)
{
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("Select " + property + "from " + win32Class);
foreach (ManagementObject device in searcher.Get())
{
Console.WriteLine("Name: {0} ",
device.GetPropertyValue("Name"));
Console.WriteLine(device.GetPropertyValue(property) + "\n");
Console.ReadKey();
}
不完全确信,你具体遇到的问题,但我可以看到你的字符串连接是不正确的。具体来说,你有“选择”+属性+“from”+ win32Class。尝试更改“从”到“从”。你现在拥有它的方式将导致属性被直接连接到字符串字面上,而没有将两者分开的空间。 –
在那里的线路突破阻碍了你要去的地方,但我明白了你的意思。非常感谢您的帮助。 –