2010-05-13 70 views
0

我使用Windows API的EnumJobs來查找打印作業的PageCount和副本,但是我發現這些字段在打印服務器上調用時幾乎總是爲零。EnumJobs不返回副本和總頁數

雖然可能是我的計時已經結束,因爲隨着作業打印頁數增加,一旦完成,打印作業無法訪問。所以EnumJobs中的值在消失之前是正確的,大約有半納秒。

我一直在網上搜尋,但找不到任何幫助,只有其他人有類似的問題。

任何有EnumJobs經驗的人或可以建議其他方法來確定打印總頁數?

+0

你不能。從打印機制造商那裏尋找軟件,從打印機本身吸取這些信息。 – 2010-05-13 13:54:41

+0

我知道這是可能的,它是在API中定義的,它在本地桌面上運行,所有其他信息都在那裏,而不是頁面計數和副本。 也有很多印刷審計軟件,正是這樣做的每頁,驅動程序和打印機獨立計費。 Windows在打印作業列表中顯示它很好,但會報告api中的值不正確。 – 2010-05-13 14:15:22

回答

0

發現它!

在客戶端,在設備和打印機上,右鍵單擊任意打印機,然後選擇打印機屬性,然後單擊共享選項卡。勾選「渲染客戶端計算機上的打印作業」。這將導致事件在服務器線軸上觸發。如果您運行的是Server 2008,則可以在服務器上執行此操作,並且會影響所有客戶端作業。

要設置編程或瞭解更多信息:

http://msdn.microsoft.com/en-us/library/ff556443.aspx