Hi,
I’m trying to get the reprot descriptor for all HID devices so I’m trying to install a WDF upper filter driver of HIDClass. It’s not device specific but class filter driver.
What I did is as below on Win7 x86:
- Compile the sample code from toaster’s basic filter driver as myfilter.sys.
- Add the registry HKLM\SYSTEM\Ccs\Control\Class{745A17A0-74D3-11D0-B6FE-00A0C90F57DA} REG_MULT_SZ myfilter.
- Copy the driver myfilter.sys to %windir%\system32\drivers.
After that, I reboot the machine and the entire system’s input get stuck. My keyboard can’t type and mouse can’t move. I’m wondering whether I can do that for the HIDClass. Should I only install the upper filter driver for device specific not the entire HIDClass?
Thanks,
Marshall
An upper filter on the hidclass parent makes no sense and can’t do anything. The hidclass fdo will accept io from above it in the stack. Filtering each of the child collections stacks won’t get you the report descriptor, and it is overkill. By setting yourself as a class filter you have put yourself in both of these types of stacks , not just the parent
What bigger problem are you trying to solve by getting the report descriptor?
d
debt from my phone
From: xxxxx@hotmail.com
Sent: 7/20/2012 2:34 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] About HIDClass class filter driver
Hi,
I’m trying to get the reprot descriptor for all HID devices so I’m trying to install a WDF upper filter driver of HIDClass. It’s not device specific but class filter driver.
What I did is as below on Win7 x86:
- Compile the sample code from toaster’s basic filter driver as myfilter.sys.
- Add the registry HKLM\SYSTEM\Ccs\Control\Class{745A17A0-74D3-11D0-B6FE-00A0C90F57DA} REG_MULT_SZ myfilter.
- Copy the driver myfilter.sys to %windir%\system32\drivers.
After that, I reboot the machine and the entire system’s input get stuck. My keyboard can’t type and mouse can’t move. I’m wondering whether I can do that for the HIDClass. Should I only install the upper filter driver for device specific not the entire HIDClass?
Thanks,
Marshall
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
Hi Doron,
I need the report descriptor to filter the report from the TLC(USAGE PAGE(DIGITIALIZER), USAGE(TOUCH PAD)). Are you saying that I need to install the filter driver on the raw PDO that the HIDClass creats for each TLC?
However, there’re lots of different types of the touch pad. How can I enumerate them in one INF? How can I set a class level filter for all of them? Or it’s impossible to do so? What about in the USB level instead of HID?
Thanks,
Marshall
Each TLC will have its own unqiue hw id. If there is more than one TLC, have an entry for each TLC’s id in your inf
d
debt from my phone
From: xxxxx@hotmail.com
Sent: 7/20/2012 5:10 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] About HIDClass class filter driver
Hi Doron,
I need the report descriptor to filter the report from the TLC(USAGE PAGE(DIGITIALIZER), USAGE(TOUCH PAD)). Are you saying that I need to install the filter driver on the raw PDO that the HIDClass creats for each TLC?
However, there’re lots of different types of the touch pad. How can I enumerate them in one INF? How can I set a class level filter for all of them? Or it’s impossible to do so? What about in the USB level instead of HID?
Thanks,
Marshall
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
Thanks Doron. According to your blog regarding to TLC, each TLC is enumerated as the RAW PDO. If I install the driver as the function driver for the TLC, do I need do any special handling to make it work?
Also, consulting the sample code FireFly, as an alternative way, can I open the remote IOTarget of the TLC from my keyboard class filter driver? I believe it can filter the report but I’m not sure whether I can intercept the report to be prevent from the Win32?
Thanks again,
Marshall