; Installation inf for devices supporting Media Transfer Protocol (MTP) ; ; Copyright (c) Microsoft Corporation. ; [SourceDisksNames] 3426=windows cd [SourceDisksFiles] wpdmtpdr.dll = 3426 wpdmtp.dll = 3426 wpdmtpus.dll = 3426 wpdmtpip.dll = 3426 wpdmtpbt.dll = 3426 [Version] Signature="$WINDOWS NT$" Class=WPD ClassGUID={EEC5AD98-8080-425f-922A-DABF3DE3F69A} Provider=%Msft% DriverVer=06/21/2006,6.3.9600.17415 [ControlFlags] BasicDriverOk=* [DestinationDirs] MTP.Files.XPRT_USB = 11 MTP.Files.XPRT_IP = 11 MTP.Files.XPRT_BT = 11 MTP.Files.Core = 11 MTP.Files.UMDFDDriver = 12,UMDF ; copy to system32\drivers\umdf [Manufacturer] %GenericMfg%=Generic,NTamd64 [Generic.NTamd64] %GenericMTP.DeviceDesc%=MTP, USB\MS_COMP_MTP %GenericMTP.DeviceDesc%=MTP, USB\Class_06&SubClass_01&Prot_01 %GenericMTPIP.DeviceDesc%=MTPIP, umb\urn:microsoft-com:device:mtp:1 %GenericMTPBT.DeviceDesc%=MTPBT, BthMtpEnum\{9518e5ca-f6af-464b-9907-a97433641968} ; Kodak %GenericMTP.DeviceDesc%=MTP, USB\VID_040A&PID_0140 %GenericMTP.DeviceDesc%=MTP, USB\VID_040A&PID_0200 %GenericMTP.DeviceDesc%=MTP, USB\VID_040A&PID_0121 %GenericMTP.DeviceDesc%=MTP, USB\VID_040A&PID_0160 ;;****************************************************************************** ;; ;; MTP with USB Transport ;; ====================== ;; ;; The following are to be used in vendor specific "Includes" and "Needs" sections. ;; Specifically, the vendor INF should contain: ;; ;; [DDInstall] ;; Include = wpdmtp.inf, WINUSB.INF ;; Needs = WPD.MTP, WINUSB.NT ;; ;; [DDInstall.hw] ;; Include = wpdmtp.inf ;; Needs = WPD.MTP.Registration <- includes all default legacy API and autoplay registration for the device ;; - OR - ;; Needs = WPD.MTP.RegistrationBasic <- only do minimum registration, no legacy API or autoplay ;; ;; [DDInstall.Services] ;; Include = wpdmtp.inf ;; Needs = WPD.MTP.Services ;; ;; [DDInstall.CoInstallers] ;; Include = wpdmtp.inf ;; Needs = WPD.MTP.CoInstallers ;; ;; [DDInstall.Wdf] ;; Include = wpdmtp.inf ;; Needs = WPD.MTP.Wdf ;; UmdfServiceOrder=WpdMtpDriver ;; ;;****************************************************************************** [WPD.MTP] CopyFiles = MTP.Files.XPRT_USB, MTP.Files.Core, MTP.Files.UMDFDDriver RegisterDlls = MTP.RegisterComServers [WPD.MTP.Registration] AddReg = WDF.Registration, MTP.AutoPlayRegistration, MTP.LEGACY.Registration, MTPUSB.Transport.Registration [WPD.MTP.RegistrationBasic] AddReg = WDF.Registration, MTPUSB.Transport.Registration [WPD.MTP.Services] AddService=WUDFWpdMtp, 0x000001fa, WUDFWpdMtp_ServiceInstall AddService=WinUsb, 0x000001f8, WinUsb_ServiceInstall [WPD.MTP.CoInstallers] AddReg = WDF.CoInstaller [WPD.MTP.Wdf] UmdfService=WpdMtpDriver,WpdMtpDriver_Install UmdfImpersonationLevel=Impersonation ;;****************************************************************************** ;; Inbox MTP USB section ;;****************************************************************************** [MTP.NT] Include = WINUSB.INF ; Import section from winusb.inf Needs = WINUSB.NT ; Run the CopyFil and AddReg directives in WinUsb.inf CopyFiles = MTP.Files.XPRT_USB, MTP.Files.Core, MTP.Files.UMDFDDriver RegisterDlls = MTP.RegisterComServers AddProperty=MTP.AddProp [MTP.NT.hw] AddReg = WDF.Registration, MTP.AutoPlayRegistration, MTP.LEGACY.Registration, MTPUSB.Transport.Registration, TSRedirection.Registration [MTP.NT.Services] AddService=WUDFWpdMtp, 0x000001fa, WUDFWpdMtp_ServiceInstall AddService=WinUsb, 0x000001f8, WinUsb_ServiceInstall [MTP.NT.CoInstallers] AddReg = WDF.CoInstaller [MTP.NT.Wdf] UmdfService=WpdMtpDriver,WpdMtpDriver_Install UmdfServiceOrder=WpdMtpDriver UmdfKernelModeClientPolicy=AllowKernelModeClients UmdfImpersonationLevel=Impersonation [MTPUSB.Transport.Registration] HKR,"WpdMtpDriver","TransportClassID",0x0,"{34C445BA-07EB-4b5d-8EE9-F66BB9DA403B}" ;;****************************************************************************** ;; ;; MTP with IP Transport ;; ===================== ;; ;; The following are to be used in vendor specific "Includes" and "Needs" sections. ;; Specifically, the INF should contain: ;; ;; [DDInstall] ;; Include = wpdmtp.inf ;; Needs = WPD.MTPIP ;; ;; [DDInstall.hw] ;; Include = wpdmtp.inf ;; Needs = WPD.MTPIP.Registration <- includes all default legacy API and autoplay registration for the device ;; - OR - ;; Needs = WPD.MTPIP.RegistrationBasic <- only do minimum registration, no legacy API or autoplay ;; ;; [DDInstall.Services] ;; Include = wpdmtp.inf ;; Needs = WPD.MTPIP.Services ;; ;; [DDInstall.CoInstallers] ;; Include = wpdmtp.inf ;; Needs = WPD.MTPIP.CoInstallers ;; ;; [DDInstall.Wdf] ;; Include = wpdmtp.inf ;; Needs = WPD.MTPIP.Wdf ;; UmdfServiceOrder=WpdMtpDriver ;; ;;****************************************************************************** [WPD.MTPIP] CopyFiles = MTP.Files.XPRT_IP, MTP.Files.Core, MTP.Files.UMDFDDriver RegisterDlls = MTPIP.RegisterComServers [WPD.MTPIP.Registration] AddReg = WDF.Registration, PTP.AutoPlayRegistration, PTP.LEGACY.Registration, MTPIP.Transport.Registration [WPD.MTPIP.RegistrationBasic] AddReg = WDF.Registration, MTPIP.Transport.Registration [WPD.MTPIP.Services] AddService=WUDFWpdMtp, 0x000001fa, WUDFWpdMtp_ServiceInstall [WPD.MTPIP.CoInstallers] AddReg = WDF.CoInstaller [WPD.MTPIP.Wdf] UmdfService=WpdMtpDriver,WpdMtpDriver_Install UmdfImpersonationLevel=Impersonation ;;****************************************************************************** ;; Inbox MTP IP section ;;****************************************************************************** [MTPIP.NT] CopyFiles = MTP.Files.XPRT_IP, MTP.Files.Core, MTP.Files.UMDFDDriver RegisterDlls = MTPIP.RegisterComServers AddProperty=MTP.AddProp [MTPIP.NT.hw] AddReg = PTP.AutoPlayRegistration, PTP.LEGACY.Registration, MTPIP.Transport.Registration, TSRedirection.Registration [MTPIP.NT.Services] AddService=WUDFWpdMtp, 0x000001fa, WUDFWpdMtp_ServiceInstall [MTPIP.NT.CoInstallers] AddReg = WDF.CoInstaller [MTPIP.NT.Wdf] UmdfService=WpdMtpDriver,WpdMtpDriver_Install UmdfServiceOrder=WpdMtpDriver UmdfKernelModeClientPolicy=AllowKernelModeClients UmdfImpersonationLevel=Impersonation [MTPIP.Transport.Registration] HKR,"WpdMtpDriver","TransportClassID",0x0,"{90ED8EEA-1605-4c46-8314-EED94AAA588B}" ;;****************************************************************************** ;; Inbox MTP BT section ;;****************************************************************************** [MTPBT.NT] CopyFiles = MTP.Files.XPRT_BT, MTP.Files.Core, MTP.Files.UMDFDDriver RegisterDlls = MTPBT.RegisterComServers AddProperty=MTP.AddProp [MTPBT.NT.hw] AddReg = MTP.AutoPlayRegistration, MTP.LEGACY.Registration, MTPBT.Transport.Registration, TSRedirection.Registration [MTPBT.NT.Services] AddService=WUDFWpdMtp, 0x000001fa, WUDFWpdMtp_ServiceInstall [MTPBT.NT.CoInstallers] AddReg = WDF.CoInstaller [MTPBT.NT.Wdf] UmdfService=WpdMtpDriver,WpdMtpDriver_Install UmdfServiceOrder=WpdMtpDriver UmdfKernelModeClientPolicy=AllowKernelModeClients UmdfImpersonationLevel=Impersonation [MTPBT.Transport.Registration] HKR,"WpdMtpDriver","TransportClassID",0x0,"{87a0faf7-bb16-458d-b3eb-2423e79e1e0c}" ;;****************************************************************************** ;; Common section ;; 1. File copy ;; 2. Regsvr COM servers ;; 3. AutoPlay ;; 4. WDF ;; 5. Registration ;; 6. WMDM/WIA legacy support ;; 7. Kernel mode service (WinUsb) ;; 8. Driver update notification ;;****************************************************************************** [MTP.Files.XPRT_IP] WpdMtpIP.dll,,,0x0100 [MTP.Files.XPRT_USB] WpdMtpUS.dll,,,0x0100 [MTP.Files.XPRT_BT] WpdMtpbt.dll,,,0x0100 [MTP.Files.Core] WpdMtp.dll,,,0x0100 [MTP.Files.UMDFDDriver] WpdMtpDr.dll,,,0x0100 [MTP.RegisterComServers] 11,,wpdmtpus.dll,1 11,,wpdmtp.dll,1 12,UMDF,wpdmtpdr.dll,1 [MTPIP.RegisterComServers] 11,,wpdmtpip.dll,1 11,,wpdmtp.dll,1 12,UMDF,wpdmtpdr.dll,1 [MTPBT.RegisterComServers] 11,,wpdmtpbt.dll,1 11,,wpdmtp.dll,1 12,UMDF,wpdmtpdr.dll,1 ;=============== TS Redirection ============= [TSRedirection.Registration] ; ; Enable support for redirecting the device over Terminal Server connection. ; HKR,,"TSRedirFlags",0x10001,0x1 ; ================ AutoPlay ================= ; PTP devices [PTP.AutoPlayRegistration] ; This lists the interfaces which WinUsb.sys will register on device start; this list contains the legacy AutoPlay HKR,,"Interfaces",0x00010000,"{6ac27878-a6fa-4155-ba85-f98f491d4f33}" ; Enable default AutoPlay support HKR,,"EnableDefaultAutoPlaySupport",0x10001,1 ; Ensure that the entries show up as 'source only' so apps registered for sink do not show up in the list HKR,,"AutoPlaySourceOnly",0x10001,1 ; MTP devices [MTP.AutoPlayRegistration] ; Enable default AutoPlay support HKR,,"EnableDefaultAutoPlaySupport",0x10001,1 ; ================= WDF sections =============== [WDF.CoInstaller] HKR,,CoInstallers32,0x00010000,"WUDFCoinstaller.dll" [WDF.Registration] HKR,"WUDF","Exclusive",0x10001,1 HKR,,"LowerFilters",0x00010008,"WinUsb" ; FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND ; USB Selective Suspend default settings that WinUSB will check. HKR,,"DeviceIdleEnabled", 0x00010001,1 ; Enable USB SS (master switch); HKR,,"DeviceIdleIgnoreWakeEnable", 0x00010001,1 ; Enable idle even thought device does not support device wake. HKR,,"DefaultIdleState", 0x00010001,1 ; Default idle state for WinUSB is on; HKR,,"UserSetDeviceIdleEnabled",0x00010001,1 ; this setting will add a power management page to allow a user to enable/disable USB SS HKR,,"DefaultIdleTimeout", 0x00010001,30000 ; idle detection timeout to 30 seconds HKR,,"DevicePowerUpOnS0Entry", 0x00010001,1 ; Always enter D0 upon resume from sleep regardless of IdleInWorkingState of its power policy owner HKR,"WDF","WdfDefaultIdleInWorkingState", 0x00010001,0 ; Current idle state for WDF driver (WinUSB) to off and uncheck the P.M. property page setting. [WpdMtpDriver_Install] UmdfLibraryVersion=1.11.0 ServiceBinary="%12%\umdf\WpdMtpDr.dll" DriverCLSID="{AAAE762B-A6A2-4c45-B5D8-9A83AFB6BB70}" ; =============== Legacy support =============== ; PTP devices [PTP.LEGACY.Registration] ; Request for auto-determination of WIA/WMDM legacy API support based on device capabilities and type HKR,,"EnableLegacySupport",0x10001,0xFFFFFFFF ; Set PTP devices to 'Camera type' devices so the correct device icon will be displayed in File Explorer HKR,,"PortableDeviceType",0x10001,1 ; Report EXIF format as JPEG for WIA HKR,,"ReportJPGFormatForEXIF",0x10001,1 ; MTP devices [MTP.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 ; =================== WUDFWpdMtp =================== [WUDFWpdMtp_ServiceInstall] ServiceType = %SERVICE_KERNEL_DRIVER% StartType = %SERVICE_DEMAND_START% ErrorControl = %SERVICE_ERROR_NORMAL% ServiceBinary = %12%\WUDFRd.sys StartName = \Driver\WudfRd ; =================== WinUsb =================== [WinUsb_ServiceInstall] DisplayName = %WinUsb.SvcDesc% ServiceType = %SERVICE_KERNEL_DRIVER% StartType = %SERVICE_DEMAND_START% ErrorControl = %SERVICE_ERROR_NORMAL% ServiceBinary = %12%\WinUsb.sys ; =========== Driver update notification ======== [MTP.AddProp] GenericDriverInstalled,,,,1 ; ; =================== Strings =================== ; [Strings] ;Non-localizable SERVICE_KERNEL_DRIVER = 0x1 SERVICE_DEMAND_START = 0x3 SERVICE_ERROR_NORMAL = 0x1 Msft="Microsoft" ;Localizable WinUsb.SvcDesc="WinUsb" GenericMfg="(Standard MTP Device)" GenericMTP.DeviceDesc="MTP USB Device" GenericMTPIP.DeviceDesc="MTP IP Device" GenericMTPBT.DeviceDesc="MTP Bluetooth Device"