Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi Word自动化-打印合并文档_Delphi_Printing_Ms Word_Mailmerge - Fatal编程技术网

Delphi Word自动化-打印合并文档

Delphi Word自动化-打印合并文档,delphi,printing,ms-word,mailmerge,Delphi,Printing,Ms Word,Mailmerge,我的D5应用程序当前可以使用以下方式将多个成员数据通过邮件合并到Word文档: wrdapp := CreateOleObjct(word.application); wrdDoc := wrdApp.Document.Open(TemplateLocation); wrdMailMerge := wrdDoc.MailMerge; populateMailMergeDateFile; wrdMailMerge.execute; 然后 wrdDoc.Saved := False; wrdDoc

我的D5应用程序当前可以使用以下方式将多个成员数据通过邮件合并到Word文档:

wrdapp := CreateOleObjct(word.application);
wrdDoc := wrdApp.Document.Open(TemplateLocation);
wrdMailMerge := wrdDoc.MailMerge;
populateMailMergeDateFile;
wrdMailMerge.execute;
然后

wrdDoc.Saved := False;
wrdDoc.Close(False);
wrdApp.Visible := True;
我想提供将合并文档直接传递给打印机的选项。但是,我找不到允许这种情况发生的代码

wrdDoc.PrintOut;
wrdDoc.Saved := False;
wrdDoc.Close(False);
打印出没有合并数据的模板文档

wrdDoc.Saved := False;
wrdDoc.Close(False);
wrdDoc.PrintOut;
显示变量对象错误

wrdMailMerge.PrintOut;
显示一个自动错误列表

我也试着用True代替False。有人能告诉我如何正确打印合并文件吗


非常感谢

在我的mailmerge代码中,我在执行合并之前将mailmerge.Destination设置为wdSendToNewDocument,然后调用WordApplication.ActiveDocument.Printout。

是的,在执行合并之前,我有一个mailmerge.Destination:=wdSendToNewDocument。但是,在删除合并时显示合并并没有什么不同。当我尝试按您的建议打印活动文档时,它会给我“RPC服务器不可用”编辑,我在打印之前保存并关闭了文档。它起作用了!谢谢frogb:)有人能告诉我save和close语句中True和False的意义吗?@notidaho:你不应该在close方法中使用False或True,你必须指定一个wdSaveOption,请参阅