2016-04-21 43 views
0

我想知道是否c#有能力檢測何時打印作業已發送到打印機。如何檢測頁面發送到打印機Windows中使用C#

我必須編寫一個小程序,用於記錄員工在公司打印的頁數,並且希望檢測此活動並在數據庫中進行記錄。在印刷時增加價值。

就從哪裏開始或文檔閱讀將是非常有幫助的任何指針

+0

可能的[如何在C#.NET中捕獲打印作業]的重複(http://stackoverflow.com/questions/10229077/how-to-catch-print-jobs-in-c-sharp-net) – Alexander

回答

0

Windows有一個名爲eventlog的東西,can be read由c#應用程序。該日誌包含有關係統上發生了什麼的許多信息。您甚至可以查找帶有與打印相關的ID的日誌記錄。與307,801和842 ID號的事件可能都適合於確定打印已完成,但請注意,單個打印可能會引發多個這樣的事件,因此如果對它們進行計數,所有這些事件都可能是誤導性的(即只使用一個!)。

這些事件也可以在event viewer中查看,可在Applications and Services Logs/Microsoft/Windows/PrintService/Operational中找到。默認情況下它們不會被記錄(會有負載!),因此您可能必須啓用日誌記錄,並且您必須記住定期清除日誌以防止日誌過大。

相關問題