C# 获取打印机当前状态的方法
C# 获取打印机当前状态的方法
发布时间:2016-12-28 来源:查字典编辑
摘要:要获得打印机的状态,应该定义一个联合.复制代码代码如下:enumPrinterStatus{其他状态=1,未知,空闲,正在打印,预热,停止打...

要获得打印机的状态,应该定义一个联合.

复制代码 代码如下:

enum PrinterStatus

{

其他状态= 1,

未知,

空闲,

正在打印,

预热,

停止打印,

打印中,

离线

}

其中的"正在打印"和"打印中"是同一个意思,至于为什么会是这样,目前还不知道.

在程序中添加System.Management的引用:using System.Management;

然后编写获取打印机状态的函数如下:

复制代码 代码如下:

/// <summary>

/// 获取打印机的当前状态

/// </summary>

/// <param name="PrinterDevice">打印机设备名称</param>

/// <returns>打印机状态</returns>

private PrinterStatus GetPrinterStat(string PrinterDevice)

{

PrinterStatus ret=0;

string path=@"win32_printer.DeviceId='"+PrinterDevice+"'";

ManagementObject printer=new ManagementObject(path);

printer.Get();

ret=(PrinterStatus)Convert.ToInt32(printer.Properties["PrinterStatus"].Value);

return ret;

}

调用示例:

复制代码 代码如下:

MessageBox.Show(GetPrinterStat("////192.168.0.88//Samsung SCX-4x16 Series").ToString());

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C#教程学习
热门C#教程学习
编程开发子分类