Word-Dokumente im Hintergrund drucken |
|
| System | Win9x, WinNT, Win2000, WinXP, Vista, Win7 |
|---|---|
| Ab Delphi-Version | Delphi 5 |
| Letzte Änderung | 28.09.2010 |
Will man ein Word-Dokument von Word (ab Word 97) drucken lassen und es anschließend sofort wieder freigeben, muss man folgendermaßen vorgehen, damit die Word-Instanz nicht freigegeben wird, bevor der Drucker seinen Auftrag bekommen hat. WordApplication und WordDocument sind die entsprechenden OLE-Server-Komponenten von der Komponentenseite "Server".
var VarFileName: OleVariant;
Background, Append, Range: OleVariant;
begin
WordApplication1.Connect;
WordApplication1.Visible:=false;
VarFileName:=FileName;
WordApplication1.Documents.Open(VarFileName, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
WordDocument1.ConnectTo(WordApplication1.ActiveDocument);
Background:=false;
Append:=false;
Range:=wdPrintAllPages;
WordDocument1.PrintOut(Background, Append, Range);
WordDocument1.Close;
WordDocument1.Disconnect;
WordApplication1.Disconnect;
end;