哪位超级高手,大师指点迷津啊
为什么word打印时候,选择了打印10份,实际取到打印任务属性的时候只有1份,但是打印出来还是10份,这是为什么?难道他不走Windows api的?
根据我仔细观察,发现WORD和打印测试页之类的无法获得准确打印任务属性的文档在打印前会有一个本地下层文档出现,但是瞬间会删除,然后才是正式的文档,而那个本地下层文档也是占用一个打印任务ID的,但是我的程序却无法捕获它,我怀疑整个打印文档的属性都是放在他里面的,但是他是怎么送进SPOOL的呢,为什么我的程序捕获不到他呢。如果属性不是在他里面,请各位大侠指教怎么获得这种打印任务的属性啊!

解决方案 »

  1.   

    1份和1页是2个概念
    1份可以是1页也可以是100页
    WORD里不管你设定1份或者100份程序都是打包成1份来输送到打印程序通过API GetJob来获取一个JOB_INFO_1的结构,其中就有TotalPages这个项来说明1份中的页数
      

  2.   

    楼上的这个不行,如果可以用GetJob得到我也不需要去钩API了!
      

  3.   

    用钩子自然可以拦截到有打印任务送往打印机,在这个事件里用GetJob来获得这个任务信息不就结了
      

  4.   

    楼上的兄弟简直瞎扯淡,都说了GETJOB不行的了,GETJOB得到的任务信息根本是不准确的,现在市面上的几款打印监控软件都是走这个路的得,没一个可以做到准确计数。
    我之前就是用GETJOB做的,但是发现计数不准,特别是对于WORD2003,份数是100%不准的,请你自己做过试验后再发表言论。
    还有这个问题我已经自己解决了,而且走的也不是getjob