当前位置: 移动技术网 > IT编程>开发语言>c# > C# 获取打印机当前状态的方法

C# 获取打印机当前状态的方法

2019年07月18日  | 移动技术网IT编程  | 我要评论
要获得打印机的状态,应该定义一个联合.复制代码 代码如下:enum printerstatus { 其他状态= 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());

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网