ich möchte gerne ein Word-Dokument per OLE drucken (Word 2007). Das funktioniert soweit ganz gut. Jedoch gelingt es mir nicht den Drucker um zu stellen:
Code: Alles auswählen
procedure TForm1.Button1Click(Sender: TObject);
var
vMSWord : variant;
vWDocument : variant;
FileName : OLEVariant;
begin
try
FileName:=extractfilepath(ParamStr(0))+'Test.docx';
vMSWord := CreateOleObject('Word.Application');
vWDocument := vMSWord.Documents.Open(FileName);
vMSWord.ActivePrinter := Printer.Printers[formularPrinter]; // Funktioniert nicht
//vMSWord.Application.ActivePrinter := Printer.Printers[formularPrinter]; // Funktioniert ebenso wenig
vMSWord.ActiveDocument.PrintOut(false);
vWDocument.Close(0);
vMSWord.Quit;
vMSWord := Unassigned;
except
Application.MessageBox('Formular konnte nicht gedruckt werden','Word-Fehler',16);
end;
end;
in der Variable formularPrinter habe ich die Nummer des ausgewählten Druckers gespeichert. (Das gesamte Projekt habe ich angehangen).
Kann mir jemand vielleicht einen guten Tipp geben? Vielen Dank im Voraus.
Besten Gruß
Marc