如何调用带有多个参数的ManagementObject?
How to call ManagementObject with more than one parameter?
使用 ManagementObject
获得 BcdObject
的正确语法是什么?对于我使用的单个参数:
var obj = new ManagementObject(@"root\WMI", string.Format("BcdObject.Id = '{0}'"), null);
但我不确定如何添加其他参数(是 AND
、,
还是其他?),例如:
var bcdObj = new ManagementObject(@"root\WMI",
string.Format("BcdObject.Id = '{0}' AND BcdObject.StoreFilePath = '{1}'",
"{current}", ""),
null);
这应该是要走的路:
var bcdId = "{current}";
var sfp = "";
var obj = new ManagementObject(
"root\WMI:BcdObject.Id=\"" + bcdId + "\",StoreFilePath=\"" + sfp + "\"");
请注意,即使您只是在逗号后加上 space 也不会起作用。祝你好运!
您可以将过滤器字符串作为构造函数中的第二个参数传递(就像在您的原始代码中一样),但适用相同的规则 - no spaces.
使用 ManagementObject
获得 BcdObject
的正确语法是什么?对于我使用的单个参数:
var obj = new ManagementObject(@"root\WMI", string.Format("BcdObject.Id = '{0}'"), null);
但我不确定如何添加其他参数(是 AND
、,
还是其他?),例如:
var bcdObj = new ManagementObject(@"root\WMI",
string.Format("BcdObject.Id = '{0}' AND BcdObject.StoreFilePath = '{1}'",
"{current}", ""),
null);
这应该是要走的路:
var bcdId = "{current}";
var sfp = "";
var obj = new ManagementObject(
"root\WMI:BcdObject.Id=\"" + bcdId + "\",StoreFilePath=\"" + sfp + "\"");
请注意,即使您只是在逗号后加上 space 也不会起作用。祝你好运!
您可以将过滤器字符串作为构造函数中的第二个参数传递(就像在您的原始代码中一样),但适用相同的规则 - no spaces.