C#獲取打印機狀態(1)——System.Management

C#中獲取打印機狀態,以下是一個操作實例:

需要添加引用System.Management,已封裝成Printer類:

    public class Printer
    {
        /// <summary>
        /// 構造函數
        /// </summary>
        /// <param name="name">打印機名稱</param>
        public Printer(string name)
        {
            this.printer_name = name;
        }

        // 設備名:EPSON R330 Series
        private string _printer_name;
        /// <summary>
        /// 打印機名稱
        /// </summary>
        public string printer_name
        {
            get
            {
                return _printer_name;
            }
            set
            {
                _printer_name = value;
            }
        }

        /// <summary>
        /// 獲取打印機狀態
        /// </summary>
        /// <returns></returns>
        public int getStatus()
        {
            string path = @"win32_printer.DeviceId='" + this.printer_name + "'";
            ManagementObject printer = new ManagementObject(path);
            printer.Get();
            return Convert.ToInt32(printer.Properties["PrinterStatus"].Value);
        }

    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章