C#獲取打印機列表方法介紹
更新時間:2022年07月05日 11:39:54 作者:edielei
這篇文章介紹了C#獲取打印機列表的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
方法一
第一步:添加引用
using System.Printing;
第二步:代碼
public static List<string> GetPrintList() { List<string> lt = new List<string>(); LocalPrintServer printServer = new LocalPrintServer(); PrintQueueCollection printQueuesOnLocalServer = printServer.GetPrintQueues(new[] { EnumeratedPrintQueueTypes.Local }); foreach (PrintQueue printer in printQueuesOnLocalServer) lt.Add(printer.Name); return lt; }
方法二
需要引入
System.Drawing.Printing System.Management
實現(xiàn)
1.獲取打印機列表
2.獲取默認打印機
3.設(shè)置默認打印機
上代碼
public class PrinterExample { /// <summary> /// 設(shè)置默認打印機 /// </summary> /// <param name="Name"></param> /// <returns></returns> [DllImport("winspool.drv")] public static extern bool SetDefaultPrinter(String Name); //調(diào)用win api將指定名稱的打印機設(shè)置為默認打印機 /// <summary> /// 獲取默認打印機 /// </summary> /// <returns></returns> public static string GetDefaultPrinter() { PrintDocument print = new PrintDocument(); string defaultName = print.PrinterSettings.PrinterName;//默認打印機名 return defaultName; } /// <summary> /// 獲取本地所有打印機 /// </summary> /// <returns></returns> public static List<String> GetLocalPrinters() { List<String> printer_names = new List<String>(); foreach (String item in PrinterSettings.InstalledPrinters) { printer_names.Add(item); } return printer_names; } /// <summary> /// 獲取本地所有打印機 System.Management方式獲取 /// </summary> /// <returns></returns> public static List<String> GetLocalPrinters2() { List<String> printer_names = new List<String>(); ManagementObjectCollection queryCollection; string _classname = "SELECT * FROM Win32_Printer"; Dictionary<string, ManagementObject> dict = new Dictionary<string, ManagementObject>(); ManagementObjectSearcher query = new ManagementObjectSearcher(_classname); queryCollection = query.Get(); foreach (ManagementObject mo in queryCollection) { string oldName = mo["Name"].ToString(); printer_names.Add(oldName); } return printer_names; } }
到此這篇關(guān)于C#獲取打印機列表的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
WinForm使用DataGridView實現(xiàn)類似Excel表格的查找替換功能
這篇文章主要介紹了WinForm使用DataGridView實現(xiàn)類似Excel表格的查找替換功能,現(xiàn)在小編通過本文給大家分享查找替換實現(xiàn)過程,需要的朋友可以參考下2021-07-07C#中l(wèi)abel內(nèi)容顯示不全、不完整的解決方法
這篇文章主要介紹了C#中l(wèi)abel內(nèi)容顯示不全、不完整的解決方法,只需要把兩個屬性設(shè)置一下即可解決這個問題,需要的朋友可以參考下2015-06-06