StehtimSchilf
Erfahrenes Mitglied
Hi Forum
Es gibt zwar schon ein solches Thema hier aber im Zweifelsfall solle man ein neues Thema eröffnen - also mach ich doch das.
Ich habe den Beispielcode von MS runtergeladen und läuft. Habe etwas rumgebastelt und das Teil mal auf den Print-Server geschoben. So, nun, wann immer ein Benutzer auf seinem Drucker (Netzwerkdrucker) was druckt, wird mir das auf dem Print-Server geloggt. Schön dachte ich! Beim Auswerten der Log-Files habe ich dann gesehen, dass alle "Total Pages" = 0 haben.
M.E liegt es daran, dass beim ersten Aufruf von EnumJobs() TotalPages, PagesPrinted und Size nicht bekannt ist.
Also habe mir mal solange die JOB_INFO_2-Daten rausschreiben lassen, solange der Job vorhanden ist. Und siehe da, die TotalPages, PagesPrinted erhöhen sich bis sie beim letzten "vorhanden sein" die effektive Anzahl betragen.
Nachteil: Das Abfragen der JOB_INFO_2-Daten solange der Job in der Queue ist, lässt die CPU auf 100% hochschnellen.
Meine Frage: Gibt es eine weitere Möglichkeit an die TotalPages ranzukommen, ohne ständig EnumJobs() aufzurufen? Bspw. mit der JobId den Printer abfragen à la getPagesPrinted(JobId) ?
Eine Möglichkeit wäre (unschön): Den Eintrag im EventViewer zu parsen
cheerioh & Thx
SiS
Es gibt zwar schon ein solches Thema hier aber im Zweifelsfall solle man ein neues Thema eröffnen - also mach ich doch das.
Ich habe den Beispielcode von MS runtergeladen und läuft. Habe etwas rumgebastelt und das Teil mal auf den Print-Server geschoben. So, nun, wann immer ein Benutzer auf seinem Drucker (Netzwerkdrucker) was druckt, wird mir das auf dem Print-Server geloggt. Schön dachte ich! Beim Auswerten der Log-Files habe ich dann gesehen, dass alle "Total Pages" = 0 haben.
M.E liegt es daran, dass beim ersten Aufruf von EnumJobs() TotalPages, PagesPrinted und Size nicht bekannt ist.
Also habe mir mal solange die JOB_INFO_2-Daten rausschreiben lassen, solange der Job vorhanden ist. Und siehe da, die TotalPages, PagesPrinted erhöhen sich bis sie beim letzten "vorhanden sein" die effektive Anzahl betragen.
Nachteil: Das Abfragen der JOB_INFO_2-Daten solange der Job in der Queue ist, lässt die CPU auf 100% hochschnellen.
Meine Frage: Gibt es eine weitere Möglichkeit an die TotalPages ranzukommen, ohne ständig EnumJobs() aufzurufen? Bspw. mit der JobId den Printer abfragen à la getPagesPrinted(JobId) ?
Eine Möglichkeit wäre (unschön): Den Eintrag im EventViewer zu parsen
cheerioh & Thx
SiS