我想检测打印机是否在线/离线之前尝试打印。 如果处于脱机状态 – 打印对话框将不可见。
Win32 API的“OpenPrinter”等似乎工作在假脱机程序队列上,而不是打印机本身,并且只会在文档发送后离线报告打印机,这太迟了。
问题 :如何知道打印机是否脱机/联机而不发送打印出来?
编辑:
Windows Creator版本更新后,QHD / 4K屏幕上的ExttextoutW x50性能下降
Delphi Windows服务devise
DateTimetoUnix在UTC?
在Windows资源pipe理器中如何获得sorting顺序?
Offline - printer is turned off OnLine - printer is turned On
如何检测Windowslogin事件?
如何通过HTTP从Internet上检索文件?
所见即所得的Unicode
在ILCreateFromPath和错误检查
获取特定驱动器的GUID
大概你知道打印机的名字或者其他细节。
那么,只需使用PRINTER_INFO_2使用EnumPrinters并检查PRINTER_STATUS_OFFLINE (或任何其他您想要避免的状态)。
或者,您可以尝试使用SetupDi*函数(aka Setup API)来确定在此刻是否连接了与打印机匹配的USB设备。
我不认为这是可能的。
您已经发现这是使用假脱机程序抽象出来的,假脱机程序状态并不总是反映打印机状态。
所以这是在Windows中设计的。
如果您只有一种特定的打印机类型,您可以查询它是否连接到USB。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。