metalwing
驱动中牛
驱动中牛
  • 注册日期2003-10-13
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分178分
  • 威望58点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
阅读:1384回复:4

关于USB打印机驱动的问题

楼主#
更多 发布于:2004-07-11 12:59
没接触过USB打印机,顾想请教一下USB打印机驱动的框架问题,那位大侠知道,能帮我解答一下吗?
USB打印机的驱动究竟应该包含几个部分?是不是有rip、打印驱动和USB虚拟打印口这三个部分?各个部分的关系是怎么样的呢?应用程序访问打印机时,他们要怎么样工作?
谢谢大家了。
新手上路,请多关照.
netdk33
驱动牛犊
驱动牛犊
  • 注册日期2002-05-21
  • 最后登录2008-12-05
  • 粉丝0
  • 关注0
  • 积分32分
  • 威望35点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-13 16:08
同问啊,我也正在做相关的事情,可是从来没有接触过打印驱动。
有源码最好了,给高分!!!
email: netwsdk@sohu.com
metalwing
驱动中牛
驱动中牛
  • 注册日期2003-10-13
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分178分
  • 威望58点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-08-06 13:47
自己顶一下。
我做的是Usb打印机的USB部分的驱动。负责rip与打印机单片机的通信。我想问一下,这个驱动的通常做法是怎样的过程?比如:
1。 rip向打印机发送打印命令,usb驱动是否是通过厂商命令将该请求发送给设备,再由设备执行?还是通过InterruptOUT传输方式?
2。 rip像打印机发送数据,要使用USB的DMA传输方式,先通过DeviceIoControl向Usb发送要传输的数据量,Usb再将该数据发往设备。然后,rip在通过WriteFile函数向Usb发送打印数据。那如果数据量很大(超过USB的BulkPipe的MaxTransferSize)时,要将数据分包,应该在哪里实现?是在rip中通过循环WriteFile还是在Usb驱动中通过ReuseIrp?
3。 rip要获取设备状态,通过USB的InterruptIN传输方式完成。那么应该有谁完成对设备InterruptIN端点的轮询?是做在rip中通过循环方式还是在USB驱动中,再由USB驱动通过事件通知rip,还有,我看很多USB例程的事件通知方式也是通过循环等待方式实现的。那么这么做与直接在rip中使用循环来轮询设备有什么区别和好处?
谢谢,能帮我解释一下吗?
新手上路,请多关照.
XR_WDM
驱动小牛
驱动小牛
  • 注册日期2002-06-28
  • 最后登录2013-03-01
  • 粉丝1
  • 关注0
  • 积分15分
  • 威望67点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-09-13 09:36
我现在也在做这方面的,帮顶下!
后进而勃发
xhtwork
驱动牛犊
驱动牛犊
  • 注册日期2004-12-20
  • 最后登录2004-12-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-12-20 11:17
游客

返回顶部