Reagieren auf das Schließen des Adobe Reader Druckfensters
Ich hatte vor kurzem das Problem mit dem AxAcroPDF-Steuerelement aus VS2013 Express zu drucken, dank eurer Hilfe konnte ich das Problem lösen. Jetzt stehe ich vor einem Folgeproblem und zwar möchte ich, dass nach dem Druck von einem oder mehereren Druckern (jeweils über das Druckfenster vom Adobe Reader) das Dokument noch in einem "Archiv-Ordner" abgelegt wird. Das Problem ist, dass ich im Moment entweder eine Messagebox einbauen muss und dann mit dem nächsten Druck warte bis die Messagebox mit OK beendet wurde oder den kompletten Druckvorgang einfach überspringe und die PDF-Datei einfach direkt verschiebe. Ich würde gerne auf das Schließen des Druckfensters vom Adobe Reader reagieren habe aber leider weder hier noch im restlichen Netz was genaueres dazu gefunden. Ich habe mir auch den Taskmanager schonmal angeschaut nur taucht da leider nichts gesondertes auf, während das Druckfenster offen ist. Die AcroRd32.exe ist vorher schon offen da ich in meinem Programm, aus dem heraus ich drucke, das AxAcroPDF-Steuerelement verwende. Könnte mir bitte jemand das Brett vorm Kopf wegnehmen?
Grüße
Mesaou
Grüße
Mesaou
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 261416
Url: https://administrator.de/contentid/261416
Ausgedruckt am: 24.11.2024 um 08:11 Uhr
10 Kommentare
Neuester Kommentar
Dann bleibt dir noch die Druckerwarteschlange des Druckers zu überwachen (z.B. via WMI) ...
Zitat von @Mesaou:
OK ... gerade noch was anderes getestet. Das Problem ist, dass der Drucker nicht so heißt wie sein Treiber, ich muss also
nur noch herausfinden ob die WMI auch den echten Namen übergibt.
In der Eigenschaft Name des Printjobs steht der Druckername, musst du nur anhand des Kommas trennenOK ... gerade noch was anderes getestet. Das Problem ist, dass der Drucker nicht so heißt wie sein Treiber, ich muss also
nur noch herausfinden ob die WMI auch den echten Namen übergibt.
Printer = WMIGetInfo(Job, "Name").split(",")(0)
Printer = WMIGetInfo(Job, "Name")
Printer = Printer.Substring(0,Printer.LastIndexOf(","))