ManagementScope 类在System.Management(在 system.management.dll 中) public class CheckPrinterState { public static bool CheckPrinter(string printerName1) { ManagementScope scope = new ManagementScope(@"\root\cimv2"); scope.Connect(); // Select Printers from WMI Object Collections ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Printer"); string printerName = ""; foreach (ManagementObject printer in searcher.Get()) { printerName = printer["Name"].ToString().ToLower(); if (printerName.IndexOf(printerName1.ToLower()) > -1) { if (printer["WorkOffline"].ToString().ToLower().Equals("true")) { return false; // printer is offline by user } else { // printer is not offline return true; } } } return false; } }
Winform 判断打印机是否可用
时间: 2024-08-14 19:43:16