关于worddocument的打印问题 用WordDocument.PrintOut打印,为什么有时可以打印,有时打不出来呢?打印不出来时,是在打印机队列那里已经有了,可马上又删了,怎么回事呢?用程序打印word文件还有其他方法吗?我用的是d7+win2000pro请教~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我没遇到过这种情况,打印队列里有,说明打印任务已经传送出去了,应该跟word设置没什么关系,可能是线路或者是打印机的问题 但是我直接用word打开同一个文件就可以打印呀.我的程序是用来生成合同文档的,直接用程序更换word文档的字符然后就直接打印出来.在d7+win2000pro+office xp下除了打印不出来,没有什么问题Procedure Tform1.PrintWithWord();var Msword,MsDoc,MsRange:Variant;beginMsWord := CreateOleObject('Word.Application') ;try MsDoc := MsWord.Documents.Open(ExtractFilePath(Paramstr(0))+'db\document.doc'); MsDoc.Select ; MsRange := MsDoc.Range ; MsDoc.Range.Find.Execute('<htbh>',,,,,,,,,zy_bh.Text,True) ; Msdoc.printout;finally MsDoc.Close(False) ; MsWord.Quit(False) ;end ;end; //end pro 如果改为 MsDoc.Close(True); 是可以把文件修改后保存的. 是设置worddocument的属性吗?我加了 MsDoc.pagesetup.papersize:=wdPaperA4;还是打不出来. 解决了.估计是关闭文件太快了,文本还没有完全传到打印机就关闭了word,改了下就可以了 Msdoc.printout; sleep(10000); MsDoc.Close(False) ; MsWord.Quit(False) ;谢谢楼上的,结帐了 调用外部程序时,假如该程序未运行则运行它,如果已经运行则将它显示出来,就像调用窗体一样,该如何操作? 有什么办法可以把类似这种属性wsNormal,直接转换为字符串? 如何将程序最小化后出现在托盘上? 一个不大的问题,在线等 关于delphi数组的问题 高手请进,急! 查询问题?? Delphi里面有没有表与or或的语言?在线等 各位前辈们,给我提示吧!!有分为谢! 请教菜鸟问题,谢谢 如何用WinApi来判断ODBC数据配置中是否存在一个名字为“My_SQl”的数据源?? 总是出错啊:(
在d7+win2000pro+office xp下除了打印不出来,没有什么问题Procedure Tform1.PrintWithWord();
var Msword,MsDoc,MsRange:Variant;
beginMsWord := CreateOleObject('Word.Application') ;
try
MsDoc := MsWord.Documents.Open(ExtractFilePath(Paramstr(0))+'db\document.doc');
MsDoc.Select ;
MsRange := MsDoc.Range ;
MsDoc.Range.Find.Execute('<htbh>',,,,,,,,,zy_bh.Text,True) ;
Msdoc.printout;
finally
MsDoc.Close(False) ;
MsWord.Quit(False) ;
end ;end; //end pro
我加了 MsDoc.pagesetup.papersize:=wdPaperA4;
还是打不出来.
估计是关闭文件太快了,文本还没有完全传到打印机就关闭了word,改了下就可以了
Msdoc.printout;
sleep(10000);
MsDoc.Close(False) ;
MsWord.Quit(False) ;谢谢楼上的,结帐了