急!win2000中设置用ManagementObject.InvokeMethod("SetDefaultPrinter", null)报错
我搜索了以前一些设置默认打印机的帖子,有如下代码
public static bool SetDefaultPrinter(string printerName)
{
bool setDefaulted = false;
ManagementObjectSearcher query;
ManagementObjectCollection querycollection;
string _classname = "select * from win32_printer";
query = new ManagementObjectSearcher(_classname);
querycollection = query.Get();
foreach (ManagementObject mo in querycollection)
{
if (string.Compare(mo["name"].ToString(), printerName, true) == 0)
{
mo.InvokeMethod("SetDefaultPrinter", null);
setDefaulted = true;
break;
}
}
return setDefaulted;
}
打印机是找到了,但是执行到
mo.InvokeMethod("SetDefaultPrinter", null);
这一句的时候总是报错: 没有任何类别中执行这个方法
希望高手帮解决,谢谢
PS: 开发版本是2005,系统是win2000个人版