阅读:2196回复:7
看过《WIN9X虚拟设备驱动程序编程指南》的大侠们:一个监视打印机端口的VXD中出现的问题
在《WIN9X虚拟设备驱动程序编程指南》这本书中,第三章给出了一个监视打印机端口的例子程序PORT。我依样画图,编译通过了,运行之后,用VXD VIEWER也看到PORT的VXD已经加载了。但是给出一个打印任务,却看不到打印机端口(378,379,37A)的任何信息。请问,看过这本书的同志,是不是可以告诉我这是为什么??
|
|
沙发#
发布于:2001-06-14 19:28
前被,你的代码是直接在vc下敲进去,然后编译的吗?
我是用quikvxd做的框架,代码不到往哪敲。用vc做的应用程序也不知道往哪敲代码。 |
|
|
板凳#
发布于:2001-06-19 18:47
报告,俺也遇到这个问题。真的不懂
|
|
地板#
发布于:2001-06-24 17:28
我也遇到过这个问题,但我用debug的o指令输出时,VxD能拦截到,当时我猜想拦不到打印文档的原因是打印驱动程序也工作在ring 0,但有资料说打印驱动程序工作在ring 3。
|
|
地下室#
发布于:2001-07-04 10:50
我用这个程序成功了,是这样做的:
1. 编写一个DOS程序,里面用OUTPORT、INPORT 3F8等端口数次 2. 运行该程序并用EXIT退出 (不知为什么,第一次总是不行。) 3. 再次运行该程序,在DOS窗下运行编好的写口程序。 4. 用EXIT退出,看LOGO文件,有对口操作的记录。 我想问题应该出在这个VXD属于我们新开的VM,则SYSTEM VM的打印事件不能截获。如果改成开机时加载不知会否有用。 |
|
|
5楼#
发布于:2001-07-04 14:55
grant:
用WORD打印文档时,LOGO能记录下来吗? |
|
6楼#
发布于:2001-07-04 16:32
可以探讨,我用过VToolsD很好永,找本书看就知道了
除了标题中那本书,还有一本《虚拟设备驱动程序开发起步与进阶》 机械工业出版社。 |
|
7楼#
发布于:2007-02-06 14:09
偶耶发现了这个问题,估计是对端口操作有关,而关键是在9x如何拦截打印机的输出??打印机的输出是通过Createfile 等文件操作来实现的??有点纳闷! 静态加载,则应用程序不能获取lpt1资源。?
|
|
|