从Microsoft Word打印时,dmCopies值错误

时间:2011-06-02 11:29:16

标签: c++ ms-word monitoring printers

我正在编写监视打印机的工具。我需要为这份工作打印打印页数。我正在使用打印机事件系统(FindFirstPrinterChangeNotification,FindNextPrinterChangeNotification,...)。

我可以使用dmCopies值(JOB_NOTIFY_FIELD_DEVMODE)获取DEVMODE结构。但是,当使用Microsoft Word打印文档时,此值不正确。这与Word bug(功能)有关。 Word修复此错误与SP(http://support.microsoft.com/kb/919736/en-us)。但SP并不总是可以安装在系统上。

如何获得正确的dmCopies值?

一种解决方案是读取假脱机文件(SPL)并从中获取正确的DEVMODE结构。但为此需要支持RAW打印机格式(PCL,PostScript,ESC-P,CaPSL,Prescribe,...)(因为有些打印机仅在RAW中生成假脱机文件)。

也许有人知道其他解决方案吗?

0 个答案:

没有答案