我开发了一个打印机搜索应用程序,用于搜索网络上的所有在线打印机。我指的是这个网站 - here
按钮事件处理程序类似于:
private void btnGetPrinters_Click(object sender, EventArgs e)
{
// Use the ObjectQuery to get the list of configured printers
System.Management.ObjectQuery oquery =
new System.Management.ObjectQuery("SELECT * FROM Win32_Printer");
System.Management.ManagementObjectSearcher mosearcher =
new System.Management.ManagementObjectSearcher(oquery);
System.Management.ManagementObjectCollection moc = mosearcher.Get();
foreach (ManagementObject mo in moc)
{
System.Management.PropertyDataCollection pdc = mo.Properties;
foreach (System.Management.PropertyData pd in pdc)
{
if ((bool)mo["Network"])
{
cmbPrinters.Items.Add(mo[pd.Name]);
}
}
}
}
但它不起作用。我已经通过线路调试发现((bool)mo [“网络”])cond。返回false。任何人都知道为什么会这样?我检查了我的网络和打印机连接。一切正常。请建议。