现有2台小票打印机,一台连接在电脑上,一台通过网络连接,现在我要是程序运行的时候判断这2台打印机是否是连接状态,我该如何做?额,打印机还从未接触过,有源码的最好了。

解决方案 »

  1.   

    遍列打印机。看看有没有两个打印机就可以了。
    System.Drawing.Print命名空间
      

  2.   

    小票打印机,可以使用windows驱动,然后像一般打印一样打印。
    但常用的是使用esc/pos打印指令直接向端口输出来控制打印,或者是pos for .net使用windows驱动时对于状态的检测有时会有延迟,特别是在网络打印机上,这个好像没办法,因为我们只负责组织数据然后扔给系统,实际的打印过程是又系统控制的,对于API上提供的那些什么状态检测方法,发现实际没有多少意义。使用指令打印,比较打印机是串口的,那么就直接操作串口就行了,如果断线了自然是连接超时或者是连接不上了,esc/pos有专门的状态检测指令,但事实也不尽如人意,特别是对网络打印机