USB WDM filter Driver

Originally, I have an AP which opens “\\.\USBSCAN0” in the CreatFile()
no overlapped operation)
and Read/Write/DeviceIoControl well with the “usbscan.sys” , since this is a
standard USB scanner driver which MS provided for the user, it works well.

From the DDK , I got a Filter Driver Sample, with successfully installation,
I can use it as the upper filter without modifying any code, it can pass
thru to “usbscan.sys” when the AP is using DeviceIoControl call, while it
CANNOT pass thru well while the AP is using Read, (not trying Write yet),
and the Read(…,&bytesReturn…) will get bytesReturn to be zero, with
nonzero returned value (means successful !!)

In the filter driver observation, the Read() call will make the
IoCallDriver(…) returned with STATUS_PENDING, which is strange, since we
use no-overlapped operation in CreateFile(… NULL), it means SYNCHRONOUS
call.

Any idea to make the filter driver work well ?


Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com