win32api在编写打印机程序中的作用.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
win32api在编写打印机程序中的作用

.巨圈 -…·-·PROGRAM Win32 API在编写打印机程序中的作用 肖民杰 API绕过驱 摘 要:论述了Win32API在打印机应用程序开发中的使用,介绍了一种使用Win32 动,直接将原始数据发送给打印机的方法,研究了使用Win32API修改打印机端口的问题,并讨 论在应用程序中使用打印机命令集的开发办法。 关键词:Win32API;原始数据;打印;端口切换;打印机命令集 众所周知,WindowB下打印的流程通常是应用程序通过调 用GDI(图形设备接口)创建打印作业.GDI图形引擎通过打Microsofi提供,它导出的函数构成了假脱机的Win32API,并对 印机驱动程序实现的DDI(设备驱动接口).生成打印机能处 理的数据.然后将数据传递到假脱机系统.再由假脱机系统负 的函数来查询打印机、打印任务、查询,改变打印机设置、加载 责将数据发送到语言监视器。语言监视器再把数据发送到端口 打印机驱动程序接口动态链接库来显示和设置打印机属性页 监视器.端口监视器用OS文件系统API往硬件端口写数据. 直至最后数据被发送到打印机。经由这个完整的流程。最终发 0,End— 0,StartPagePfinte0,WritePrinter0,EndPagePrinter 送到打印机的数据一般是位图数据和少量格式控制命令.虽然 DocPrinter()、ClosePrinter0函数把原始数据发送到打印假脱 可以实现所见所得的打印.但是.通过驱动生成的数据。往往 机,从而绕过正常的GDI或打印机驱动程序绘制这一条常规 数据量大。而且不能灵活发挥打印机的内部特性。如打印机自 路,实现直接将原始数据(含打印机控制命令)发送到打印机 身的丰富命令集、自带的字库、倍高倍宽等自带的字处理功 的目的。 能、状态监控等优势都得不到正常发挥。 2利用Win32API将原始数据发送给打印机 为此.在编写Windows下的打印及打印机控制程序时,常 常需要绕过打印机驱动程序.直接通过应用程序将原始数据发 使用Win32API将原始打印数据发送打印机的完整步骤 送到打印机。要实现这个目的。就要充分了解并利用Windows 如下: 打印假脱机系统的一些特殊API函数。 (1)调用OpenPrinter0打开打印机,获取打印机句柄。 (2)初始化DOCINFO打印机结构体。 1 Windows打印假脱机系统 (3)调用StartDoePrinter 0表明应用程序准备发送文档数 Windows下打印作业发送到打印假脱机系统.由打印假脱 据给打印机。 机调度、转换打印数据流、发送到打印机以减少向外设传送数 (4)调用StartPagePrinter0表明程序准备发送一个新的 据时占用主机处理器的时间。 打印贞给打印机。 Windows打印假脱机最基本组件如图l所示。 (5)调用WritePrintcr

您可能关注的文档

文档评论(0)

118zhuanqian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档