您好我有一种方法可以从网络获取打印机列表并填写我的下拉列表:
private void fillprinterslist()
{
System.Management.ManagementScope objMS =
new System.Management.ManagementScope(ManagementPath.DefaultPath);
objMS.Connect();
SelectQuery objQuery = new SelectQuery("SELECT * FROM Win32_Printer");
ManagementObjectSearcher objMOS = new ManagementObjectSearcher(objMS, objQuery);
System.Management.ManagementObjectCollection objMOC = objMOS.Get();
foreach (ManagementObject Printers in objMOC)
{
if (Convert.ToBoolean(Printers["Network"])) // ALL NETWORK PRINTERS.
{
DropDownList3.Items.Add(Printers["Name"].ToString());
}
}
}
并非所有网络打印机都在下拉列表中填写,例如我在下一个房间使用斑马标签打印机,我将其用作此项目的测试,并且它不会显示在下拉列表中< / p>
打印机位于:
\ ksmsv010 \ kcmzbl63
在我的下拉列表中,我可以看到其他不是Zebra打印机的打印机
**我怎么只列出所有服务器的斑马打印机? **
我所有斑马打印机的信息在命名约定中都有“zbl”,所以我不知道我们是否可以根据这3个字母进行过滤。
请帮助谢谢!!!!