阅读:1527回复:3
关于DeviceIoControl的问题
关于DeviceIoControl的问题
用CreateFile()打开成功,但用DeviceIoControl()于驱动程序通讯时总是说功能错误,返回的错误码都为1,请问是什么原因??? 请高手帮忙!!谢谢!! |
|
沙发#
发布于:2007-02-01 12:57
用户被禁言,该主题自动屏蔽! |
|
板凳#
发布于:2007-01-30 15:04
谢谢回复!驱动中的 io ctrl code 与软件中的 ctrl code 是一致的,是在一个头文件里定义的,
#define IOCTL_FILTER_STOP CTL_CODE(FILE_DEVICE_UNKNOWN, 0x900, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_FILTER_START CTL_CODE(FILE_DEVICE_UNKNOWN, 0x901, METHOD_BUFFERED, FILE_ANY_ACCESS) 驱动和应用程序里边包含了这个头文件,开始我怀疑是device type不一致,但是通过查看驱动中的参数,确定了设备的类型是一致的。 另外,还有一个比较奇怪的事情就是,虽然应用程序中调用deviceiocontrol()时,返回错误,但是驱动程序却收到了应用程序发出的信息,并且也做了相应的操作,不知道为什么?请大家帮帮忙!! |
|
地板#
发布于:2007-01-30 13:08
检查一下你驱动中的 io ctrl code 与你软件中的 ctrl code 是否一致。确认你使用的是同一个数值。再好好看看 msdn 中该函数的使用方法。
|
|
|