CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他开发语言 >  Office开发/ VBA

VB打印WORD的问题??

楼主yxtyxt3311(韬)2005-09-22 18:11:31 在 其他开发语言 / Office开发/ VBA 提问

打印出来的文件,打不开,说文件类型不对或不支持。有10.6M大小。看不到内容,二进制显示基本上是F代码,意味的是空的。正常界面打印是151K,打开很正常,文件内容正确。  
   
   
  Dim   wdo   As   New   Word.Application  
  wdo.Documents.Open   "c:\c.doc"  
   
  wdo.PrintOut   Background:=True,   _  
                            Append:=False,   _  
                            Range:=Word.WdPrintOutRange.wdPrintAllDocument,   _  
                            Copies:="1",   _  
                            PageType:=Word.WdPrintOutPages.wdPrintAllPages,   _  
                            OutputFileName:="c:\test.tif",   _  
                            PrintToFile:=True  
   
  'wdo.Quit   (False)  
   
   
   
  上面就是那段打印TIF文件的VB代码,原因是这样的,我用的那个虚拟打印机是可以打印TIF文件的,运行WORD程序,在里面写文字的之后,然后点击文件菜单中的打印,这样界面操作打印出来的TIF文件是正常的,可以显现出来,可是我运用上面的代码操作之后,就有问题了,开始加上了wdo.Quit(False),后来想到printOut是异步的,就把他给注释掉了,通过程序操作打印出来的TIF文件,总是10.6M,这么大,而界面操作打印出来提151K,通过程序打印出来的TIF文件,通过图像处理软件打开,说是文件格式不正确或者不支持。后来查看这个TIF文件的二进制代码,发现里面除了头部一点点,其它全是F,不知道为什么,界面操作可以打印出来,程序操作打印出来的有问题呢?????  
  问题点数:100、回复次数:8Top

1 楼yxtyxt3311(韬)回复于 2005-09-23 11:25:06 得分 0

没人知道吗???Top

2 楼wanghuibing()回复于 2005-09-24 19:41:01 得分 0

不会  
  你能告诉我怎么用VB实现打印啊  
  谢谢Top

3 楼yxtyxt3311(韬)回复于 2005-09-27 10:59:36 得分 0

代码不是在上面吗Top

4 楼wanghuibing()回复于 2005-09-27 19:15:04 得分 0

谢谢你啊Top

5 楼techgopher(米粒之珠也放光华)回复于 2005-09-30 03:18:25 得分 100

你用错对象了。Application和Document对象都有Print方法,但参数不一样。用Application.PrintOut时要给出FileName参数,而Document对象的PrintOut就没有这个参数。也就是说,你要么:  
   
  Dim   wdo   As   New   Word.Application  
  wdo.PrintOut   Background:=True,   _  
                            FileName:="c:\c.doc",   _  
                            OutputFileName:="c:\test.tif",   _  
                            PrintToFile:=True  
   
  要么:  
  Dim   wdo   As   New   Word.Application  
  wdo.Documents.Open   "c:\c.doc"  
   
  ActiveDocument.PrintOut   Background:=True,   _  
                            OutputFileName:="c:\test.tif",   _  
                            PrintToFile:=True  
   
  另外,你要确认当前打印机是那个虚拟的,可以用Application.ActivePrinter来设置如果有必要的话。Top

6 楼yxtyxt3311(韬)回复于 2005-10-17 10:08:59 得分 0

没错呀,和你第二个方法一样呀,只不过我参数多了几个,这个没什么关系吧.....Top

7 楼yxtyxt3311(韬)回复于 2005-10-21 10:38:12 得分 0

顶Top

8 楼yxtyxt3311(韬)回复于 2005-10-25 16:12:18 得分 0

再顶Top

相关问题

  • VB调用Word打印的问题,急!!!
  • VB里如何打印word文档
  • vb打印
  • vb打印
  • 请问用VB调用WORD打印...如何控制打印的份数?
  • 请问 用vb如何调用喝打印word文档
  • VB在调用Word做打印时,图片的处理
  • VB调用的WORD的打印预览功能时的问题
  • 关于VB调用WORD后打印的问题?
  • VB如何打印?

关键词

  • 打印
  • 文件
  • 代码
  • 界面
  • word
  • application
  • tif
  • wdo
  • printout
  • applicationwdo

得分解答快速导航

  • 帖主:yxtyxt3311
  • techgopher

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo