嗨,我有一种方法可以从网络获取打印机列表并填写我的下拉列表:
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());
}
}
}
并非所有网络打印机都填写在下拉列表中,例如,我在隔壁房间有一台斑马标签打印机,我将其用作该项目的测试,但它没有显示在下拉列表中
打印机位于:
\ksmsv010\kcmzbl63
在我的下拉列表中,我可以看到不是 Zebra 打印机的其他打印机
**我如何只列出所有服务器的斑马打印机?**
根据我掌握的信息,所有斑马打印机在命名约定中都有“zbl”,所以我不知道我们是否可以根据这 3 个字母进行过滤。
请帮忙谢谢!!!!