; MsHidKmdf.inf
; Microsoft Windows KMDF HID Miniport INF
; Copyright (c) Microsoft Corporation

; This inf file provides the default sections that must be
; included by external INFs which require the MsHidKmdf driver.
; The Class/ClassGuid and Hardware ID matches for this driver
; package are not relevant for external INFs including this
; driver.  The including driver may be any class and match
; any Hardware ID.
;
; An external INF is expected to include the sections of this
; INF by adding Include/Needs directives for each possible
; [DDInstall.] section to the corresponding [MsHidKmdf.*]
; sections as shown below.
;
; Note that an external INF must have each of these DDInstall
; sections, and reference each of these MsHidKmdf sections regardless
; of whether either INF currently specifies any directives for
; that sections.  This allows future extensibility of the base
; inbox INF sections to apply to existing external drivers.
;
;
; [DDInstall]
; Include=MsHidKmdf.inf
; Needs=MsHidKmdf.NT
; ; also include any existing DDInstall directives
;
; [DDInstall.HW]
; Include=MsHidKmdf.inf
; Needs=MsHidKmdf.NT.HW
; ; also include any existing DDInstall.HW directives
;
; [DDInstall.Services]
; Include=MsHidKmdf.inf
; Needs=MsHidKmdf.NT.Services
; ; also include any existing any DDInstall.Services directives
;
; This INF also allows the usage of the MsHidKmdf service as a filter driver.
; For this usage, follow the above pattern but use one of the below section
; names instead of MsHidKmdf.NT.*, replacing the name in all three sections:
;
; Upper filter: MsHidKmdf_UpperFilter.NT
; Lower filter: MsHidKmdf_LowerFilter.NT
;
; When using the filter sections, the following pattern must also be included:
;
; [DDInstall.Filters]
; Include=MsHidKmdf.inf
; Needs=MsHidKmdf_UpperFilter.NT.Filters
;
; Where MsHidKmdf_UpperFilter.NT.Filters should be used for to install WUDFRD as
; an upper filter, and MsHidKmdf_LowerFilter.NT for a lower filter

[Version]
Signature="$Windows NT$"
Class=System
ClassGuid={4d36e97d-e325-11ce-bfc1-08002be10318}
Provider=%MSFT%
PnpLockdown=1
DriverVer = 06/21/2006,10.0.20348.1

[Manufacturer]
%MSFT%=Microsoft,NTamd64

[Microsoft.NTamd64]
%mshidkmdf.DeviceDesc%=MsHidKmdf             ; Used by Include/Needs
%mshidkmdf.DeviceDesc%=MsHidKmdf_UpperFilter ; Used by Include/Needs
%mshidkmdf.DeviceDesc%=MsHidKmdf_LowerFilter ; Used by Include/Needs

[MsHidKmdf.NT]
; Keep empty section placeholder for Include/Needs

[MsHidKmdf.NT.HW]
; Keep empty section placeholder for Include/Needs

[MsHidKmdf.NT.Services]
AddService=mshidkmdf,0x2,MsHidKmdf_ServiceInstall


[MsHidKmdf_UpperFilter.NT]
; Keep empty section placeholder for Include/Needs

[MsHidKmdf_UpperFilter.HW]
; Keep empty section placeholder for Include/Needs

[MsHidKmdf_UpperFilter.NT.Filters]
AddFilter=mshidkmdf,,MsHidKmdf_UpperFilterPosition

[MsHidKmdf_UpperFilter.NT.Services]
AddService=mshidkmdf,,MsHidKmdf_ServiceInstall


[MsHidKmdf_LowerFilter.NT]
; Keep empty section placeholder for Include/Needs

[MsHidKmdf_LowerFilter.NT.HW]
; Keep empty section placeholder for Include/Needs

[MsHidKmdf_LowerFilter.NT.Filters]
AddFilter=mshidkmdf,,MsHidKmdf_LowerFilterPosition

[MsHidKmdf_LowerFilter.NT.Services]
AddService=mshidkmdf,,MsHidKmdf_ServiceInstall


[MsHidKmdf_LowerFilterPosition]
FilterPosition=Lower

[MsHidKmdf_UpperFilterPosition]
FilterPosition=Upper


[MsHidKmdf_ServiceInstall]
DisplayName   = %mshidkmdf.SvcName%
ServiceType   = 1 ; SERVICE_KERNEL_DRIVER
StartType     = 3 ; SERVICE_DEMAND_START
ErrorControl  = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\mshidkmdf.sys


[Strings]
; Non-localizable
MSFT="Microsoft"

; Localizable
mshidkmdf.DeviceDesc="Kernel-mode Driver Framework HID Miniport Device"
mshidkmdf.SvcName="Pass-through HID to KMDF Filter Driver"
