document.printout wirft keine Ausnahme

tecla

Erfahrenes Mitglied
Hallo zusammen

Meine Anwendung soll eine Liste von Word-Dokumenten ausdrucken. Macht sie auch, soweit so gut.
Jetzt habe ich aber das Problem, dass keine Exception geworfen wird, falls der Drucker nicht vorhanden ist. D.h. dass obwohl ein Fenster mit der Fehlermeldung "Der Druckauftrag konnte nicht abgeschlossen werden etc.." aufgeht, welches ich mit OK bestätigen muss, der catch-Block nicht erreicht wird und die Applikation weiterläuft und logischerweise versucht auch die anderen Dokumente auszudrucken. Mit dem Effekt, dass ich für jedes Dokument die Fehlermeldung erhalte :mad:
Der Code, der die Fehlermeldung auslöst, aber nicht den Catch-Block erreicht:
Code:
try
{
       oDoc.PrintOut(ref oFalse, ref oFalse, ref range, ref missing,
                            ref missing, ref missing, ref items, ref copies, ref pages,
                            ref pageType, ref oFalse, ref oTrue, ref missing, ref oFalse,
                            ref missing, ref missing, ref missing, ref missing);
}
catch
{  
return; 
}

Wenn ich überprüfe, ob der Drucker vorhanden ist, wie hier beschrieben:

http://dotnet-snippets.de/dns/pruefen-ob-drucker-erreichbar-ist-SID895.aspx

kriege ich ein true zurück, obwohl das Druckerkabel ausgezogen ist!

Bin für jede Idee dankbar!

Grüsse, Tecla
 
Hallo nochmal

Ich hab jetzt versucht, zuerst zu prüfen, ob der Drucker überhaupt angeschlossen ist.
Dies mit folgender Anleitung:

http://www.codeproject.com/KB/printing/printeroffline.aspx

Da in den Systemsteuerungen mein Drucker den Status "Bereit" hat, obwohl er nicht angeschlossen ist, funktioniert das ganze nicht. Ausserdem würde ich auch gar nicht wissen wollen, ob der Drucker im Offline-Mode ist, sondern ob "keine Verbindung möglich" ist und müsste wissen, welche Eigenschaft da zwischen die eckigen Klammern gehören würde, wenn denn das überhaupt ein Weg ist, da mein Drucker ja "Bereit" ist...

Code:
if (printer["WorkOffline"].ToString().ToLower().Equals("true"))

Irgendwelche Tipps?

Grüsse, Tecla
 

Neue Beiträge

Zurück