none
Specifying filter type ? RRS feed

  • General discussion

  • Hi:

    I'm not clear about how upper or lower filters get specified in inf and would appreciate it if you could help me understand three questions below. For example, below is a section in the Toaster sample inf:

    [Toaster_Device.NT.HW.AddReg]
    HKR,,"UpperFilters",0x00010000,"devupper"
    HKR,,"LowerFilters",0x00010000,"devlower"

    (A) Does it say "The Toaster is a upper filter of devuper", and it's low filter of devlower ?

    (B) Does "lower" mean lower in the driver stack (closer to the bottom/device firmware) ?

    (C) When does a filter driver HAVE TO specify BOTH upper and lower filters like it is done in the section of inf above?

    Thanks in advance.


    leo

    Sunday, June 11, 2017 1:52 AM

All replies

  • The above lines indicate that devupper is a filter that resides above Toaster in the driver stack, and that devlower resides below Toaster in the driver stack.   Lower means that before Toaster is loaded, the lower filters for Toaster are loaded, so that IRP's going down the stack from Toaster will pass through devlower.  Upper means that after Toaster is loaded, the upper filters are loaded, these filters see the requests before Toaster.

    There is never a case where a filter has to specify both upper and lower, what the filters do is up to designer of the code.


    Don Burn Windows Driver Consulting Website: http://www.windrvr.com

    Sunday, June 11, 2017 1:07 PM
  • Thanks!!

    leo

    Sunday, June 11, 2017 2:35 PM