; Installation inf for the WPD Composite Driver
;
; Copyright (c) Microsoft Corporation.
;

[SourceDisksNames]
3426=windows cd

[SourceDisksFiles]
wpdcomp.dll 		= 3426

[Version]
Signature="$WINDOWS NT$"
Class=WPD
ClassGUID={EEC5AD98-8080-425f-922A-DABF3DE3F69A}
Provider=%Msft%
DriverVer = 06/21/2006,10.0.22621.1

[DestinationDirs]
Composite.Files.UMDFDDriver = 12,UMDF ; copy to system32\drivers\umdf

[ControlFlags]
BasicDriverOk=*

[Manufacturer]
%MicrosoftMfg%=Microsoft,NTamd64

[Microsoft.NTamd64]
%GenericComposite.DeviceDesc%=Composite,COMP\WPD
%IncludeComposite.DeviceDesc%=WPD.Composite
%IncludeComposite.DeviceDesc%=WPD.Composite.Registration
%IncludeComposite.DeviceDesc%=WPD.Composite.RegistrationBasic

;;******************************************************************************
;;
;; The following are to be used in vendor specific "Includes" and "Needs" sections.
;; Specifically, the vendor INF should contain:
;;
;; [DDInstall]
;; Include = wpdcomp.inf
;; Needs   = WPD.Composite
;;
;; [DDInstall.hw]
;; Include = wpdcomp.inf
;; Needs   = WPD.Composite.Registration       <- includes all default legacy API and autoplay registration for the device
;;  - OR - 
;; Needs   = WPD.Composite.RegistrationBasic  <- only do minimum registration, no legacy API or autoplay
;; 
;; [DDInstall.Services]
;; Include = wpdcomp.inf
;; Needs   = WPD.Composite.Services
;;
;; [DDInstall.CoInstallers]
;; Include = wpdcomp.inf
;; Needs = WPD.Composite.CoInstallers
;;
;; [DDInstall.Wdf]
;; Include = wpdcomp.inf
;; Needs = WPD.Composite.Wdf
;; UmdfServiceOrder=WpdComposite
;;
;;******************************************************************************

[WPD.Composite]
CopyFiles = Composite.Files.UMDFDDriver

[WPD.Composite.Registration]
Needs     = WPD.Composite.Registration.HW

[WPD.Composite.Registration.HW]
AddReg    = Composite.AutoPlayRegistration, Composite.Registration, Composite.LEGACY.Registration

[WPD.Composite.RegistrationBasic]
Needs     = WPD.Composite.RegistrationBasic.HW

[WPD.Composite.RegistrationBasic.HW]
AddReg    = Composite.Registration

[WPD.Composite.Services]
AddService=WUDFWpdComp, 0x000001fa, WUDFWpdComp_ServiceInstall

[WPD.Composite.CoInstallers]
AddReg   = WDF.CoInstaller

[WPD.Composite.Wdf]
UmdfService=WpdComposite,WpdComposite_Install
UmdfImpersonationLevel=Impersonation

;;******************************************************************************
;; Inbox Composite USB section
;;******************************************************************************

[Composite.NT]
CopyFiles = Composite.Files.UMDFDDriver
AddProperty=Composite.AddProp

[Composite.NT.hw]
AddReg    = Composite.AutoPlayRegistration, Composite.Registration, Composite.LEGACY.Registration, TSRedirection.Registration

[Composite.NT.Services]
AddService=WUDFWpdComp, 0x000001fa, WUDFWpdComp_ServiceInstall

[Composite.NT.CoInstallers]
AddReg = WDF.CoInstaller

[Composite.NT.Wdf]
UmdfService=WpdComposite,WpdComposite_Install
UmdfServiceOrder=WpdComposite
UmdfImpersonationLevel=Impersonation
UmdfKernelModeClientPolicy=AllowKernelModeClients

;;******************************************************************************
;; Common section
;;   1. File copy 
;;   2. Regsvr COM servers
;;   3. AutoPlay 
;;   4. WDF 
;;   5. Registration
;;   6. WMDM/WIA legacy support
;;   7. Kernel mode service (WPDUSB)
;;   8. Driver update notification
;;******************************************************************************

[Composite.Files.UMDFDDriver]
Wpdcomp.dll,,,0x0100

;=============== TS Redirection =============
[TSRedirection.Registration]
;
; Enable support for redirecting the device over Terminal Server connection.
;
HKR,,"TSRedirFlags",0x10001,0x1

; ================ AutoPlay =================

; Composite devices

[Composite.AutoPlayRegistration]
; Enable default AutoPlay support
HKR,,"EnableDefaultAutoPlaySupport",0x10001,1

; ================= WDF sections ===============

[WDF.CoInstaller]
HKR,,CoInstallers32,0x00010000,"WUDFCoinstaller.dll"

[WpdComposite_Install]
UmdfLibraryVersion=1.11.0
ServiceBinary="%12%\umdf\wpdcomp.dll"
DriverCLSID="{31AA1008-D1FE-43D5-AA0C-1E68B6D18E67}"

;=============== Registration =============
[Composite.Registration]
;
; Indicate to the Class Installer that this is a Composite Device (0x00000001)
;
HKR,,"ClassInstallerFlags",0x10001,0x1

; =============== Legacy support ===============

[Composite.LEGACY.Registration]
; Request for auto-determination of WIA/WMDM legacy API support based on device capabilities and type
HKR,,"EnableLegacySupport",0x10001,0xFFFFFFFF

; Report EXIF format as JPEG for WIA  
HKR,,"ReportJPGFormatForEXIF",0x10001,1

; =================== WUDFWpdComp ===================

[WUDFWpdComp_ServiceInstall]
ServiceType     = %SERVICE_KERNEL_DRIVER%
StartType       = %SERVICE_DEMAND_START%
ErrorControl    = %SERVICE_ERROR_NORMAL%
ServiceBinary   = %12%\WUDFRd.sys
StartName       = \Driver\WudfRd

; =========== Driver update notification ========

[Composite.AddProp]
GenericDriverInstalled,,,,1

;
; =================== Strings ===================
;

[Strings]

;Non-localizable 
SERVICE_KERNEL_DRIVER = 0x1 
SERVICE_DEMAND_START  = 0x3 
SERVICE_ERROR_NORMAL  = 0x1 
Msft="Microsoft"

;Localizable
GenericComposite.DeviceDesc="WPD Composite Device"
IncludeComposite.DeviceDesc="Included WPD Composite Device"
MicrosoftMfg="Microsoft"
