Ich suche nach einer Möglichkeit, eine Liste oder Anzahl von Jobs von einem bestimmten Drucker zu erhalten. Im besten Fall möchte ich ein "Job-Objekt" haben, das einen Druckauftrag und seinen Namen in der Druckerwarteschlange darstellt.
Dies ist erforderlich, da ich den Status eines Druckers überwachen muss, damit ich die Druckwarteschlange mit einem neuen Stapel von Dokumenten auffüllen kann, ohne den Druckspooler zu überlasten.
Vielen Dank im Voraus!
Bearbeiten: Codefragment der Lösung hinzugefügt
%Vor%Sie können die .NET 3.0 PrintQueue-Klasse im System.Printing-Namespace verwenden. Seine NumberOfJobs-Eigenschaft teilt Ihnen mit, wie viele Jobs in die Warteschlange gestellt werden. GetPrintJobInfoCollection () gibt Details zu allen Jobs zurück. Beachten Sie, dass es keine Ereignisse gibt, die Ihnen sagen, dass sich die Job-Sammlung geändert hat, Sie müssen mit einem Timer abfragen. Einmal sollte eine Sekunde gut sein.
Mit WMI können Sie Systeminformationen zu Geräten und anderen Geräten abrufen.