阅读:1597回复:5
USB读写的问题,剩下的分都给了!
我用DriverWizard生成的USB框架,里面有可以被WriteFile调用的写函数(IRP_MJ_WRITE)Write.我想问一下是不是如果想控制驱动程序读数据的话只能在应用程序中调用WriteFile?驱动程序能否自己启动线程来读取数据?
而且,驱动程序中提供的Write函数我也没太看明白,不知道那句话是读数据,还请大家帮我指点一下,深表感谢!!! 分数少了一些,不好意思,大家见谅!! |
|
最新喜欢:lmhhlm...
|
沙发#
发布于:2003-02-18 11:00
你也可以用 deviceiocontrol . 不一定用 writefile .
而且,你在驱动程序中可以修改你的 readfile 让它去实现写功能,只是不符合使用习惯而已. :D |
|
|
板凳#
发布于:2003-02-18 11:03
补充一点,只要 usb 设备正常初始化,驱动程序与设备已正确联结,那么在任何地方驱动程序都可以访问设备,而不需要调用 writefile .
writefile 仅仅是一个符号,用于与上位应用程序通信,具体实现取决你的驱动程序. :D |
|
|
地板#
发布于:2003-02-19 11:35
谢谢!
我还有一件事不明白,我想在deviceiocontrol中实现读功能, 是不是要把write函数copy过去还是用别的什么方法? |
|
|
地下室#
发布于:2003-02-19 13:50
deviceiocontrol中自己定义一个ControlCode实现读功能.
多找些书看看先吧!这是最基础的知识. |
|
5楼#
发布于:2003-07-19 15:08
我认为ReadFile()和DeviceIOControl()本质上差不多,是应用程序和驱动程序通信的两种方式,要通信,无非是两个缓冲(输入、输出)和两个长度(输入缓冲长度、输出缓冲长度),这两点ReadFile()和DeviceIOControl()是一样的,他们的差别是,DeviceIOControl()多了一个dwIoControlCode参数,可以实现一些比较特殊的通信,比如传输一些控制命令,而不是简单地数据通信,其实我觉得有了dwIoControlCode()足以。
|
|
|