Serienbrief drucken

Outsider77

Erfahrenes Mitglied
Hallo zusammen!
Ich erstelle mit meinem Programm Etiketten über die Word-Serienbrief-Funktion.
Wenn ich die dann allerdings drucken möchte, kommt es zum Problem.
Die Word-Application spreche ich folgender Maßen an:
Code:
mwapp As New Microsoft.Office.Interop.Word.Application

Drucken und Schließen:
Code:
mwapp.ActiveDocument.PrintOut()
mwapp.Application.Quit(SaveChanges:=False)
mwapp = Nothing

Das Problem ist, dass nichts gedruckt wird.
Ich vermute, daß die Application zu schnell geschlossen wird.
Ich habe das Ganze mit einer Message-Box nach dem Druck-Befehl getestet und es funktioniert.
Gibt es eine Möglichkeit, mit dem Schließen der Application so lange zu warten,
bis der Druck abgeschlossen ist?
Vielen Dank schonmal!
Gruß
 
Zuletzt bearbeitet:
Hi

MSDN hat gesagt.:
This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.
http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word.documentclass.printout.aspx

Besser ists, wenn du die PrintOut-Methode der Application-klasse nutzt http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word._application.printout.aspx

Aber auch hier wirst du deinen Thread kurz warten lassen müssen, bis das Drucken beendet ist
C#:
// Make sure all of the documents are gone from the queue
while(m_App.BackgroundPrintingStatus > 0)
{
System.Threading.Thread.Sleep(250);
}
 

Neue Beiträge

Zurück