Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV
Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


Keyboard Class Filter drivers and WHQL

OSR_Community_UserOSR_Community_User Member Posts: 110,217
I have this PS2 keyboard class filter driver that I have been trying to
get signed from Microsoft.

First I wrote a KMDF based driver that works fine but is a nightmare to
install when it comes to class filters. I used code on ntdev site that
doesn't require an INF file and you cant get drivers to get signed
unless there is an INF file. Plus uninstalling the driver uninstalls
other class filter drivers.....KMDF bug may be. Have a support case open
for 3 months....



Well so now I wrote the same driver in non-kmdf style and now have a
simple class filter driver that installs using inf, and creates a raw
PDO that a user mode app can use to talk to the driver.



Well now when I try to run DTM, and give it the INF file, it says "No
devices using the specified driver(s) could be found in the selected
machine pool. Running jobs with no devices will most likely result in a
failed submission."



It is a class filter that obviously doesn't have its own device. It's
loaded as part of a PS2 keyboard's device stack. I am trying under the
Unclassified category.



How the hell am I going to get it signed? Winqual guys say open a new
support case with DTM team.



I'm becoming increasing frustrated with the responses from Microsoft
which invariable have links to documentation and steps to download them.
It' borderline insulting sometimes.

Even paid support cases seem to be going nowhere.







-pankaj

Comments

  • Doron_HolanDoron_Holan Member - All Emails Posts: 10,552
    KMDF has nothing to do with the UpperFilters key on uninstall. The uninstall path in the coinstaller is rather simple, there is nothing for it to do. IIRC, I am pretty darn sure that all input drivers, filters and functional, must be KMDF to get signed

    d

    From: [email protected] [mailto:[email protected]] On Behalf Of Pankaj Garg
    Sent: Thursday, February 05, 2009 9:48 AM
    To: Windows System Software Devs Interest List
    Subject: [ntdev] Keyboard Class Filter drivers and WHQL

    I have this PS2 keyboard class filter driver that I have been trying to get signed from Microsoft.
    First I wrote a KMDF based driver that works fine but is a nightmare to install when it comes to class filters. I used code on ntdev site that doesn't require an INF file and you cant get drivers to get signed unless there is an INF file. Plus uninstalling the driver uninstalls other class filter drivers.....KMDF bug may be. Have a support case open for 3 months....

    Well so now I wrote the same driver in non-kmdf style and now have a simple class filter driver that installs using inf, and creates a raw PDO that a user mode app can use to talk to the driver.

    Well now when I try to run DTM, and give it the INF file, it says "No devices using the specified driver(s) could be found in the selected machine pool. Running jobs with no devices will most likely result in a failed submission."

    It is a class filter that obviously doesn't have its own device. It's loaded as part of a PS2 keyboard's device stack. I am trying under the Unclassified category.

    How the hell am I going to get it signed? Winqual guys say open a new support case with DTM team.

    I'm becoming increasing frustrated with the responses from Microsoft which invariable have links to documentation and steps to download them. It' borderline insulting sometimes.
    Even paid support cases seem to be going nowhere.



    -pankaj



    ---
    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
    d
  • Chris_AseltineChris_Aseltine Member Posts: 1,228
    Pankaj Garg wrote:

    > I'm becoming increasing frustrated with the responses from
    > Microsoft which invariable have links to documentation and
    > steps to download them.

    By the way... did you try rebooting and clearing your browser's cache?
  • OSR_Community_UserOSR_Community_User Member Posts: 110,217
    Doron,

    My kmdf based Mouse Upper Class filter had an issue. This was for a PS2
    stack running in a Virtual Machine. Everything the driver was
    uninstalled, it uninstalled other class filter drivers from the stack
    (in this case VMWare's). When I switched to the non kmdf one, the
    problem went away.

    We have a case open with Microsoft to investigate this issue. It may not
    be a kmdf issue, but it certainly was an issue and reproducible every
    time.



    I wasn't aware of any requirements for input/input filters to be kmdf
    only.



    Even if they were kmdf based, how does one test the driver. Other folks
    have the messaged on internet about DTM not finding any device that
    matches the INF provided with the filter. How do you run the tests in
    this case? It seems like a generic filter driver issue.



    -pankaj







    ________________________________

    From: [email protected]
    [mailto:[email protected]] On Behalf Of Doron Holan
    Sent: Thursday, February 05, 2009 10:13 AM
    To: Windows System Software Devs Interest List
    Subject: RE:[ntdev] Keyboard Class Filter drivers and WHQL



    KMDF has nothing to do with the UpperFilters key on uninstall. The
    uninstall path in the coinstaller is rather simple, there is nothing for
    it to do. IIRC, I am pretty darn sure that all input drivers, filters
    and functional, must be KMDF to get signed



    d



    From: [email protected]
    [mailto:[email protected]] On Behalf Of Pankaj Garg
    Sent: Thursday, February 05, 2009 9:48 AM
    To: Windows System Software Devs Interest List
    Subject: [ntdev] Keyboard Class Filter drivers and WHQL



    I have this PS2 keyboard class filter driver that I have been trying to
    get signed from Microsoft.

    First I wrote a KMDF based driver that works fine but is a nightmare to
    install when it comes to class filters. I used code on ntdev site that
    doesn't require an INF file and you cant get drivers to get signed
    unless there is an INF file. Plus uninstalling the driver uninstalls
    other class filter drivers.....KMDF bug may be. Have a support case open
    for 3 months....



    Well so now I wrote the same driver in non-kmdf style and now have a
    simple class filter driver that installs using inf, and creates a raw
    PDO that a user mode app can use to talk to the driver.



    Well now when I try to run DTM, and give it the INF file, it says "No
    devices using the specified driver(s) could be found in the selected
    machine pool. Running jobs with no devices will most likely result in a
    failed submission."



    It is a class filter that obviously doesn't have its own device. It's
    loaded as part of a PS2 keyboard's device stack. I am trying under the
    Unclassified category.



    How the hell am I going to get it signed? Winqual guys say open a new
    support case with DTM team.



    I'm becoming increasing frustrated with the responses from Microsoft
    which invariable have links to documentation and steps to download them.
    It' borderline insulting sometimes.

    Even paid support cases seem to be going nowhere.







    -pankaj






    ---
    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


    ---
    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
  • Ray_TrentRay_Trent Member Posts: 398
    Doron is right that keyboard and mouse drivers have to be KMDF to be WHQL'd.

    It sounds like there might be a real KMDF bug there somewhere (or
    "feature"... the OS has removed other filters when installing PS/2
    filters for a long time), but in the mean time in order to get your
    driver working you could try this:

    Create an INF file that does nothing except run a coinstaller (ok, it
    could create the service and set registry keys for you and probably do a
    bunch of other stuff too).

    In the coinstaller, perform the actions you're currently performing to
    install the class driver. This won't work, of course, if you're showing
    UI or doing anything that can't run in system context, but that seems
    unlikely.

    Pankaj Garg wrote:
    > I have this PS2 keyboard class filter driver that I have been trying to
    > get signed from Microsoft.
    >
    > First I wrote a KMDF based driver that works fine but is a nightmare to
    > install when it comes to class filters. I used code on ntdev site that
    > doesn’t require an INF file and you cant get drivers to get signed
    > unless there is an INF file. Plus uninstalling the driver uninstalls
    > other class filter drivers…..KMDF bug may be. Have a support case open
    > for 3 months….
    >
    >
    >
    > Well so now I wrote the same driver in non-kmdf style and now have a
    > simple class filter driver that installs using inf, and creates a raw
    > PDO that a user mode app can use to talk to the driver.
    >
    >
    >
    > Well now when I try to run DTM, and give it the INF file, it says “No
    > devices using the specified driver(s) could be found in the selected
    > machine pool. Running jobs with no devices will most likely result in a
    > failed submission.”
    >
    >
    >
    > It is a class filter that obviously doesn’t have its own device. It’s
    > loaded as part of a PS2 keyboard’s device stack. I am trying under the
    > Unclassified category.
    >
    >
    >
    > How the hell am I going to get it signed? Winqual guys say open a new
    > support case with DTM team.
    >
    >
    >
    > I’m becoming increasing frustrated with the responses from Microsoft
    > which invariable have links to documentation and steps to download them.
    > It’ borderline insulting sometimes.
    >
    > Even paid support cases seem to be going nowhere.
    >
    >
    >
    >
    >
    >
    >
    > -pankaj
    >
    >
    >
    >
    >

    --
    Ray
    (If you want to reply to me off list, please remove "spamblock." from my
    email address)
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Writing WDF Drivers 7 Dec 2020 LIVE ONLINE
Internals & Software Drivers 25 Jan 2021 LIVE ONLINE
Developing Minifilters 8 March 2021 LIVE ONLINE