umdf 2 upper filter driver for camera

0

I'm trying to develop an upper filter driver for my camera. I'm having trouble involving the INF file for installation as it keeps failing. The driver is a UMDF 2 driver. I used devcon to install the driver in my system but it keeps failing with the log No matching driver found in single INF.

Thanks for the help

The INF file (modified from the template skeleton of Visual studio UMDF 2):

;
; ccfltr.inf
;

[Version]
Signature="$Windows NT$"
Class=Camera 
ClassGuid={ca3e7ab9-b4c3-4ae6-8251-579ef933890f} ;camera class guid
Provider=%ManufacturerName%
CatalogFile=ccfltr.cat
DriverVer=01/12/2020, 1.0.0 
PnpLockDown=1

[Manufacturer]
%ManufacturerName%=Standard,NT$ARCH$

[Standard.NT$ARCH$]
%DeviceName%=MyDevice_Install, USB\VID_13D3&PID_5621 ; hwid of camera

[SampleClass_RegistryAdd]
HKR,,,,%ClassName%
HKR,,Icon,,"-10"

[SourceDisksFiles]
ccfltr.dll=1

[SourceDisksNames]
1 = %DiskName%

; =================== UMDF Device ==================================

[MyDevice_Install.NT]
CopyFiles=UMDriverCopy

[MyDevice_Install.NT.hw]
AddReg=Ccfltr_AddReg

[Ccfltr_AddReg]
HKR,,"UpperFilters",0x00010008,"WUDFRd" ; FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND

[MyDevice_Install.NT.Services]
AddService=WUDFRd,0x000001fa,WUDFRD_ServiceInstall

[MyDevice_Install.NT.CoInstallers]
AddReg=CoInstallers_AddReg

[MyDevice_Install.NT.Wdf]
UmdfService=ccfltr,ccfltr_Install
UmdfServiceOrder=ccfltr

[ccfltr_Install]
UmdfLibraryVersion=$UMDFVERSION$ 
ServiceBinary=%12%\UMDF\ccfltr.dll

[WUDFRD_ServiceInstall]
DisplayName = %WudfRdDisplayName%
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WUDFRd.sys

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WUDFCoinstaller.dll"

[DestinationDirs]
UMDriverCopy=12,UMDF ; copy to drivers\umdf

[UMDriverCopy]
ccfltr.dll

; =================== Generic ==================================

[Strings]
ManufacturerName="Hariom Narang" ;TODO: Replace with your manufacturer name
ClassName="Samples" ; TODO: edit ClassName
DiskName = "ccfltr Installation Disk"
WudfRdDisplayName="Windows Driver Foundation - User-mode Driver Framework Reflector"
DeviceName="ccfltr Device"

I use devcon (in powershell) to install the driver as:

devcon install .\ccfltr.inf "USB\VID_13D3&PID_5621"

My setupapi.dev.log shows this output:

>>>  [Device Install (UpdateDriverForPlugAndPlayDevices) - USB\VID_13D3&PID_5621]
>>>  Section start 2020/12/01 14:59:19.524
      cmd: "C:\Users\Hariom\Documents\wdk_debugging_tools\devcon.exe" install .\ccfltr.inf USB\VID_13D3&PID_5621
     ndv: INF path: C:\Users\Hariom\source\repos\ccfltr\Debug\ccfltr\ccfltr.inf
     ndv: Install flags: 0x00000001
     ndv: {Update Device Driver - USB\VID_13D3&PID_5621\0X0001}
     ndv:      Search options: 0x00000080
     ndv:      Searching single INF 'C:\Users\Hariom\source\repos\ccfltr\Debug\ccfltr\ccfltr.inf'
     dvi:      {Build Driver List} 14:59:19.576
     dvi:           Searching for hardware ID(s):
     dvi:                usb\vid_13d3&pid_5621&rev_1611
     dvi:                usb\vid_13d3&pid_5621
     dvi:           Searching for compatible ID(s):
     dvi:                usb\devclass_00&subclass_00&prot_00
     dvi:                usb\devclass_00&subclass_00
     dvi:                usb\devclass_00
     dvi:                usb\composite
     dvi:      {Build Driver List - exit(0x00000000)} 14:59:19.680
!    ndv:      No matching drivers found in single INF
     dvi:      {DIF_SELECTBESTCOMPATDRV} 14:59:19.693
     dvi:           Default installer: Enter 14:59:19.700
     dvi:                {Select Best Driver}
!    dvi:                     Selecting driver failed(0xe0000228)
     dvi:                {Select Best Driver - exit(0xe0000228)}
!    dvi:           Default installer: failed
!    dvi:           Error 0xe0000228: There are no compatible drivers for this device.
     dvi:      {DIF_SELECTBESTCOMPATDRV - exit(0xe0000228)} 14:59:19.739
!    ndv:      Unable to select best compatible driver. Error = 0xe0000228
     ndv:      No drivers found for device.
     ndv: {Update Device Driver - exit(00000103)}
!    ndv: No better matching drivers found for device 'USB\VID_13D3&PID_5621\0X0001'.
     ndv: {Update Device Driver - ROOT\CAMERA\0000}
     ndv:      Search options: 0x00000080
     ndv:      Searching single INF 'C:\Users\Hariom\source\repos\ccfltr\Debug\ccfltr\ccfltr.inf'
     dvi:      {Build Driver List} 14:59:19.794
     dvi:           Searching for hardware ID(s):
     dvi:                usb\vid_13d3&pid_5621
     dvi:      {Build Driver List - exit(0x00000000)} 14:59:19.816
!    ndv:      No matching drivers found in single INF
     dvi:      {DIF_SELECTBESTCOMPATDRV} 14:59:19.829
     dvi:           Default installer: Enter 14:59:19.837
     dvi:                {Select Best Driver}
!    dvi:                     Selecting driver failed(0xe0000228)
     dvi:                {Select Best Driver - exit(0xe0000228)}
!    dvi:           Default installer: failed
!    dvi:           Error 0xe0000228: There are no compatible drivers for this device.
     dvi:      {DIF_SELECTBESTCOMPATDRV - exit(0xe0000228)} 14:59:19.877
!    ndv:      Unable to select best compatible driver. Error = 0xe0000228
     ndv:      No drivers found for device.
     ndv: {Update Device Driver - exit(00000103)}
!    ndv: No better matching drivers found for device 'ROOT\CAMERA\0000'.
!    ndv: No devices were updated.
<<<  Section end 2020/12/01 14:59:19.924
<<<  [Exit status: FAILURE(0x00000103)]
wdf
filter-driver
umdf
asked on Stack Overflow Dec 1, 2020 by Hariom Narang

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0