我想获取网络打印机的状态。我试过WMI代码,因为这个link说。但即使我拆下网线,它总是会去到其他部分。打印机状态返回错误值
这里是我试过的代码:
ManagementObjectSearcher searcher = new
ManagementObjectSearcher("SELECT * FROM Win32_Printer");
string printerName = "";
foreach (ManagementObject printer in searcher.Get())
{
printerName = printer["Name"].ToString().ToLower();
if (printer["WorkOffline"].ToString().ToLower().Equals("true") && printer["Default"].ToString().ToLower().Equals("true"))
{
string s = "Printer offline" + printerName;
listBox1.Items.Add(s);
}
else
{
// printer is not offline
// Console.WriteLine("Your Plug-N-Play printer is connected.");
string s = "Printer found and is online " + printerName;
listBox1.Items.Add(s);
}
你'ToLower'然后'Offline'?你明白为什么它总是会碰到其他部分 – V4Vendetta 2013-04-11 06:16:10
+1这是一个很好的观察。但我印的是价值,它总是假的。 – Zigma 2013-04-11 06:39:41
@ V4Vendetta嗨问题已编辑。现在检查条件 – Zigma 2013-04-11 06:49:30