From: john on 14 Dec 2006 02:32 Hi, My device need setup 2 drivers, one driver manage USB communication with device, the other is a virtual HID class driver which enumerate some HID devices such as keyboard, mouse and so on. 2 drivers can be installed and work normanlly on windows MCE OS, WINXP 64 bit OS and Vista RC2 32 bit OS. Now, I need setup this 2 drivers on Vista 64 bit OS. I known that every driver on Vista 64 bit OS require to pass digital signatures. Through pressing F8 key after OS started, I can disable the digital signatures for a while for testing my driver. unfortunately, I only can setup the USB driver, the HID driver always return failure. My HID class driver is based on the VHIDMINI driver, it locate in these directory {system disk}\WINDDK\5744\src\hid\vhidmini\sys. I have tried to setup the VHIDMINI driver by running ''devcon'' tool, It also return failure. Can someone try to install it on VISTA 64 bit OS? I check the setupapi.dev.log, it report "Installing NULL driver" information and other information. I don't understand it. I think that some infomation in inf file bring out. I attached these inf and sys files for reference. Any additional links or information will be greatly appreciated! Lejianz, john at cwtek.com.tw THE inf file's content: [Version] Signature="$CHICAGO$" Class=HIDClass ClassGuid={745a17a0-74d3-11d0-b6fe-00a0c90f57da} Provider=%VENDOR% CatalogFile=vhidmini.cat ;LayoutFile=layout.inf DriverVer=09/21/2006,6.0.5736.1 ; ; Layout.inf (etc.) list all files shipped with the operating system so the ; source description sections are only needed if other files are needed. ; ; In order to use IHV drivers, the SourceDisksNames section must list the ; disk(s) containing the drivers and the SourceDisksFiles section must list ; which disk number each file to be copied is found on. ; Disk number 99 is used to avoid a conflict with the disk numbers defined ; in layout.inf ; ; Files used in a driver installation need to be digitally signed otherwise ; installation may fail. See documentation elsewhere in the DDK regarding ; driver signing. [SourceDisksFiles] vhidmini.sys = 99 [SourceDisksNames.x86] 99 = %DISK_NAME%,,,\i386 ;[SourceDisksNames.ia64] ;99 = %DISK_NAME%,,,\ia64 [SourceDisksNames.amd64] 99 = %DISK_NAME%,,,\amd64 [DestinationDirs] CopyFilesSYS = 12 ; should it be 10 to take care of 98 stuff?????? CopyFilesDLL = 11 ; %SystemRoot%\system or system32 - 98 or Win2000 CopyFilesSYS_98 = 10, system32/drivers [Manufacturer] %VENDOR%=Vendor, NTx86, NTia64, NTamd64 ; For Win2K [Vendor] %VHidMini% = VHidMini.Inst, {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice ; For XP and later [Vendor.NTx86] %VHidMini% = VHidMini.Inst, {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice [Vendor.NTia64] %VHidMini% = VHidMini.Inst, {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice [Vendor.NTamd64] %VHidMini% = VHidMini.Inst, {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice [ControlFlags] ExcludeFromSelect = HID\MyVirtualHidDevice ;=============================================================== ; VHidMini (Root Enumerated Hid Device) install section ;=============================================================== [VHidMini.Inst] CopyFiles = CopyFilesSYS_98, CopyFilesDLL AddReg = VHidMini_98me.AddReg [VHidMini.Inst.NT] CopyFiles = CopyFilesSYS, CopyFilesDLL [VHidMini.Inst.NT.HW] AddReg = VHidMini_Parameters.AddReg [VHidMini.Inst.NT.Services] AddService = vhidmini,0x00000002,vhidmini_Service_Inst, [CopyFilesSYS] vhidmini.sys ;HidClass.sys ;HidParse.sys [CopyFilesSYS_98] vhidmini.sys HidClass.sys HidParse.sys [CopyFilesDLL] Hid.dll [VHidMini_Parameters.AddReg] HKR,,"ReadFromRegistry",%REG_DWORD%, 0x00000001 HKR,,"MyReportDescriptor",%REG_BINARY%, 06, 00, FF, 09, 01, A1, 01, 85, 01, 09, 01, 15, 00, 26, ff, 00, 75, 08, 95, 01, B1, 00, 09, 01, 15, 00, 26, FF, 00, 75, 08, 95, 01, B1, 00, 09, 01, 75, 08, 95, 01, 81,00, C0 [VHidMini_98me.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,"vhidmini.sys" [vhidmini_Service_Inst] DisplayName = %VHidMini% ServiceType = %SERVICE_KERNEL_DRIVER% StartType = %SERVICE_DEMAND_START% ErrorControl = %SERVICE_ERROR_IGNORE% ServiceBinary = %12%\vhidmini.sys ;=============================================================== ; VHidDevice (Virtual Hid Device) install section ; - Only a Null service is installed. ;=============================================================== [VHidDevice.Inst] [VHidDevice.Inst.NT] [VHidDevice.Inst.NT.Services] AddService = ,0x00000002, ; NULL Service ;================================================================ [Strings] ; *******Localizable Strings******* VENDOR = "Microsoft Corp" VHidMini = "Root Enumerated Hid Device (sample)" VHidDevice = "Virtual Hid Device (sample)" DISK_NAME = "Virtual Hid Device Sample Install Disk" ; *******Non Localizable Strings******* SERVICE_BOOT_START = 0x0 SERVICE_SYSTEM_START = 0x1 SERVICE_AUTO_START = 0x2 SERVICE_DEMAND_START = 0x3 SERVICE_DISABLED = 0x4 SERVICE_KERNEL_DRIVER = 0x1 SERVICE_ERROR_IGNORE = 0x0 SERVICE_ERROR_NORMAL = 0x1 SERVICE_ERROR_SEVERE = 0x2 SERVICE_ERROR_CRITICAL = 0x3 REG_EXPAND_SZ = 0x00020000 REG_DWORD = 0x00010001 REG_MULTI_SZ = 0x00010000 REG_BINARY = 0x00000001 REG_SZ = 0x00000000
From: John Zou on 18 Dec 2006 04:58 I check the inf/setupapi.dev.log file and found that the source path in the section below is error. flq: SourcePath - [C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02\佰#] flq: SourceFile - [HidClass.sys] flq: Flags - 0x00000000 flq: {SPFILENOTIFY_NEEDMEDIA} flq: {SPFILENOTIFY_NEEDMEDIA - exit(0x00000000)} !!! flq: SPFILENOTIFY_NEEDMEDIA: returned FILEOP_ABORT. !!! flq: Error 2: The system cannot find the file specified. HidClass.sys and HidParse.sys is supplied by Vista System, the source file exclude them. So the OS can only find them in input.inf according to compalitable ID. But the path input.inf_85616b02\佰# is not EXISTED. Someone can tell why? How do I modified the Vhidmini.inf ? Thanks a lot. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I listed the setupapi.dev.log file below. [Device Install Log] OS Version = 6.0.6000 Service Pack = 0.0 Suite = 0x0100 ProductType = 1 Architecture = amd64 [BeginLog] >>> [Device Install (UpdateDriverForPlugAndPlayDevices) - >>> {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE] >>> Section start 2006/12/18 15:19:54.691 cmd: devcon install vhidmini.inf "{D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE" dvi: Set selected driver complete. dvi: {Build Driver List} 15:19:54.751 dvi: Searching for hardware ID(s): dvi: {d49f883c-6486-400a-8c22-1a9ef48577e4}\hid_device dvi: Processing a single INF: 'c:\vhidmini\vhidmini.inf' inf: Opened INF: 'c:\vhidmini\vhidmini.inf' ([strings] <src = normal>) sig: {_VERIFY_FILE_SIGNATURE} 15:19:54.756 sig: Key = vhidmini.inf sig: FilePath = c:\vhidmini\vhidmini.inf sig: Catalog = c:\vhidmini\vhidmini.cat ! sig: Verifying file against specific (valid) catalog failed! (0x800b0109) ! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 15:19:54.865 sig: {_VERIFY_FILE_SIGNATURE} 15:19:54.865 sig: Key = vhidmini.inf sig: FilePath = c:\vhidmini\vhidmini.inf sig: Catalog = c:\vhidmini\vhidmini.cat ! sig: Verifying file against specific Authenticode(tm) catalog failed! (0x800b0100) ! sig: Error 0x800b0100: No signature was present in the subject. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0100)} 15:19:54.869 dvi: Created Driver Node: dvi: HardwareID - {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE dvi: InfName - c:\vhidmini\vhidmini.inf dvi: DevDesc - Root Enumerated Hid Device (sample) dvi: DrvDesc - Root Enumerated Hid Device (sample) dvi: Provider - Microsoft Corp dvi: Mfg - Microsoft Corp dvi: ModelsSec - Vendor.NTamd64 dvi: InstallSec - VHidMini.Inst dvi: ActualSec - VHidMini.Inst.NT dvi: Rank - 0x80ff0000 dvi: Signer - Not digitally signed dvi: Signer Score - Not digitally signed dvi: DrvDate - 09/21/2006 dvi: Version - 6.0.5736.1 dvi: {Build Driver List - exit(0x00000000)} 15:19:54.875 dvi: {DIF_SELECTBESTCOMPATDRV} 15:19:54.875 dvi: No class installer for 'Human Interface Devices' dvi: No CoInstallers found dvi: Default installer: Enter 15:19:54.876 dvi: {Select Best Driver} dvi: Selected driver installs from section [VHidMini.Inst] in 'c:\vhidmini\vhidmini.inf'. dvi: Class GUID of device remains: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}. dvi: Set selected driver complete. dvi: Selected: dvi: Description - [Root Enumerated Hid Device (sample)] dvi: InfFile - [c:\vhidmini\vhidmini.inf] dvi: Section - [VHidMini.Inst] dvi: Signer - [Not digitally signed] dvi: Rank - [0x80ff0000] dvi: {Select Best Driver - exit(0x00000000)} dvi: Default installer: Exit dvi: {DIF_SELECTBESTCOMPATDRV - exit(0x00000000)} 15:19:54.882 inf: {SetupCopyOEMInf: c:\vhidmini\vhidmini.inf} 15:19:54.883 inf: Opened INF: 'c:\vhidmini\vhidmini.inf' ([strings] <src = normal>) inf: Opened INF: 'c:\vhidmini\vhidmini.inf' ([strings] <src = normal>) ! inf: Package was already in store: skipping Driver Store add inf: Driver Store location: C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf inf: Published Inf Path: C:\Windows\INF\oem40.inf inf: OEM source media location: c:\vhidmini\ inf: {SetupCopyOEMInf exit (0x00000000)} 15:19:54.969 dvi: Searching for hardware ID(s): dvi: {d49f883c-6486-400a-8c22-1a9ef48577e4}\hid_device inf: Opened PNF: 'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf' ([strings] <src=drvstore>) sig: {_VERIFY_FILE_SIGNATURE} 15:19:54.974 sig: Key = vhidmini.inf sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.cat ! sig: Verifying file against specific (valid) catalog failed! (0x800b0109) ! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 15:19:54.978 sig: {_VERIFY_FILE_SIGNATURE} 15:19:54.979 sig: Key = vhidmini.inf sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.cat ! sig: Verifying file against specific Authenticode(tm) catalog failed! (0x800b0100) ! sig: Error 0x800b0100: No signature was present in the subject. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0100)} 15:19:54.982 dvi: Selected driver installs from section [VHidMini.Inst] in 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf'. dvi: Class GUID of device remains: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}. dvi: Set selected driver complete. dvi: {Plug and Play Service: Device Install for ROOT\HIDCLASS\0000} ump: Creating Install Process: DrvInst.exe 15:19:54.986 ndv: Infpath=C:\Windows\INF\oem40.inf ndv: DriverNodeName=vhidmini.inf:Vendor.NTamd64:VHidMini.Inst:6.0.5736.1:{d49f883c-6486-400a-8c22-1a9ef48577e4}\hid_device ndv: DriverStorepath=C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf ndv: Building driver list from driver node strong name... dvi: Searching for hardware ID(s): dvi: {d49f883c-6486-400a-8c22-1a9ef48577e4}\hid_device inf: Opened PNF: 'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf' ([strings] <src=drvstore>) sig: {_VERIFY_FILE_SIGNATURE} 15:19:55.012 sig: Key = vhidmini.inf sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.cat ! sig: Verifying file against specific (valid) catalog failed! (0x800b0109) ! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 15:19:55.088 sig: {_VERIFY_FILE_SIGNATURE} 15:19:55.088 sig: Key = vhidmini.inf sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.inf sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55\vhidmini.cat ! sig: Verifying file against specific Authenticode(tm) catalog failed! (0x800b0100) ! sig: Error 0x800b0100: No signature was present in the subject. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0100)} 15:19:55.091 dvi: Selected driver installs from section [VHidMini.Inst] in 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf'. dvi: Class GUID of device remains: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}. dvi: Set selected driver complete. ndv: {Core Device Install} inf: Opened PNF: 'C:\Windows\INF\oem40.inf' ([strings] <src=oempath>) pol: Device installation is subject to policy dvi: {DIF_ALLOW_INSTALL} 15:19:55.102 dvi: No class installer for 'Root Enumerated Hid Device (sample)' dvi: No CoInstallers found dvi: Default installer: Enter 15:19:55.104 dvi: Default installer: Exit dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:19:55.105 ndv: Installing files... dvi: {DIF_INSTALLDEVICEFILES} 15:19:55.106 dvi: No class installer for 'Root Enumerated Hid Device (sample)' dvi: Default installer: Enter 15:19:55.107 dvi: {Install FILES} inf: Opened PNF: 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf' ([strings] <src=drvstore>) inf: {Install Inf Section [VHidMini.Inst.NT]} inf: CopyFiles=CopyFilesSYS,CopyFilesDLL (vhidmini.inf line 82) cpy: Open PnpLockdownPolicy: Err=2. This is OK. Use LockDownPolicyDefault flq: QueueSingleCopy... flq: Inf : 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf' flq: SourceInf: 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf' flq: SourceSection: [sourcedisksfiles] flq: Source root path based on SourceInf flq: SourceRootPath: 'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55' flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000000 flq: SourceRootPath - 'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55' flq: SourcePath - '\amd64' flq: SourceFilename - 'vhidmini.sys' flq: TargetDirectory- 'C:\Windows\system32\DRIVERS' flq: TargetFilename - 'vhidmini.sys' flq: SourceDesc - 'Virtual Hid Device Sample Install Disk' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: QueueSingleCopy... flq: Inf : 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf' ! flq: Missing SourceDisksFiles/SourceDisksNames information from INF. ! flq: Default INBOX source locations pulled from pre-built DrvIndex flq: SourceRootPath: 'C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02' flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000000 flq: SourceRootPath - 'C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02' flq: SourcePath - '佰#\' flq: SourceFilename - 'HidClass.sys' flq: TargetDirectory- 'C:\Windows\system32\DRIVERS' flq: TargetFilename - 'HidClass.sys' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: QueueSingleCopy... flq: Inf : 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf' ! flq: Missing SourceDisksFiles/SourceDisksNames information from INF. ! flq: Default INBOX source locations pulled from pre-built DrvIndex flq: SourceRootPath: 'C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02' flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000000 flq: SourceRootPath - 'C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02' flq: SourcePath - '佰#\' flq: SourceFilename - 'HidParse.sys' flq: TargetDirectory- 'C:\Windows\system32\DRIVERS' flq: TargetFilename - 'HidParse.sys' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: QueueSingleCopy... flq: Inf : 'c:\windows\system32\driverstore\filerepository\vhidmini.inf_8ca6be55\vhidmini.inf' ! flq: Missing SourceDisksFiles/SourceDisksNames information from INF. flq: Source root path based on Main INF flq: SourceRootPath: 'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55' flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000000 flq: SourceRootPath - 'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_8ca6be55' flq: SourceFilename - 'Hid.dll' flq: TargetDirectory- 'C:\Windows\system32' flq: TargetFilename - 'Hid.dll' flq: {FILE_QUEUE_COPY exit(0x00000000)} inf: {Install Inf Section [VHidMini.Inst.NT] exit (0x00000000)} dvi: Processing co-installer registration section [VHidMini.Inst.NT.CoInstallers]. inf: {Install Inf Section [VHidMini.Inst.NT.CoInstallers]} inf: No (Copy/Ren/Del)Files directives found inf: {Install Inf Section [VHidMini.Inst.NT.CoInstallers] exit (0x00000000)} dvi: Co-installers registered. dvi: {Install INTERFACES} dvi: Installing section [VHidMini.Inst.NT.Interfaces] dvi: {Install INTERFACES exit 00000000} dvi: {Install FILES exit (0x00000000)} dvi: Default installer: Exit dvi: {DIF_INSTALLDEVICEFILES - exit(0x00000000)} 15:19:55.139 ndv: Pruning file queue... dvi: {_SCAN_FILE_QUEUE} flq: ScanQ flags=620 flq: SPQ_SCAN_PRUNE_COPY_QUEUE flq: SPQ_SCAN_FILE_COMPARISON flq: SPQ_SCAN_ACTIVATE_DRP flq: ScanQ number of copy nodes=4 flq: File 'C:\Windows\system32\DRIVERS\vhidmini.sys' pruned from copy. sig: Using catalog 'C:\Windows\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\oem27.CAT'. ! sig: VerifyTrustFailed for C:\Windows\system32\DRIVERS\vhidmini.sys. ! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. cpy: DrpSetRegFileProt 'C:\Windows\system32\DRIVERS\vhidmini.sys' Status=0 Class=OEM Legacy flq: File 'C:\Windows\system32\Hid.dll' pruned from copy. ! cpy: Drp target file 'C:\Windows\system32\Hid.dll' is owned by TI flq: ScanQ action=200 DoPruning=32 flq: ScanQ end Validity flags=620 CopyNodes=2 dvi: {_SCAN_FILE_QUEUE exit(0, 0x00000000)} ndv: Committing file queue... flq: {_COMMIT_FILE_QUEUE} flq: CommitQ DelNodes=0 RenNodes=0 BackNodes=0 CopyNodes=2 flq: {SPFILENOTIFY_STARTQUEUE} flq: {SPFILENOTIFY_STARTQUEUE - exit(0x00000001)} flq: {SPFILENOTIFY_STARTSUBQUEUE} flq: {SPFILENOTIFY_STARTSUBQUEUE - exit(0x00000001)} flq: SPFILENOTIFY_NEEDMEDIA: flq: SourcePath - [C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02\佰#] flq: SourceFile - [HidClass.sys] flq: Flags - 0x00000000 flq: {SPFILENOTIFY_NEEDMEDIA} flq: {SPFILENOTIFY_NEEDMEDIA - exit(0x00000000)} !!! flq: SPFILENOTIFY_NEEDMEDIA: returned FILEOP_ABORT. !!! flq: Error 2: The system cannot find the file specified. flq: {SPFILENOTIFY_ENDQUEUE} flq: {SPFILENOTIFY_ENDQUEUE - exit(0x00000001)} ! bak: Install failed, attempting to restore original files. flq: {_COMMIT_FILE_QUEUE exit(0x00000002)} ndv: Device install status=0x00000002 ndv: Performing device install final cleanup... ! ndv: Queueing up error report since device installation failed... ndv: {Core Device Install - exit(0x00000002)} ump: Server install process exited with code 0x00000002 15:19:55.178 ump: {Plug and Play Service: Device Install exit(00000002)} ndv: Device Install failed for new device...installing NULL driver. dvi: {Plug and Play Service: Device Install for ROOT\HIDCLASS\0000} ump: Creating Install Process: DrvInst.exe 15:20:13.978 ! ndv: Installing NULL driver! dvi: Set selected driver complete. pol: Device installation is subject to policy dvi: {DIF_ALLOW_INSTALL} 15:20:13.991 dvi: No class installer for 'Human Interface Devices' dvi: No CoInstallers found dvi: Default installer: Enter 15:20:13.993 dvi: Default installer: Exit dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:20:13.994 dvi: {DIF_INSTALLDEVICE} 15:20:13.994 dvi: No class installer for 'Human Interface Devices' dvi: Default installer: Enter 15:20:13.996 ! dvi: Installing NULL driver! ! dvi: A NULL driver installation is not allowed for this type of device! !!! dvi: Cleaning up failed installation (e0000219) !!! dvi: Default installer: failed! !!! dvi: Error 0xe0000219: The installation failed because a function driver was not specified for this device instance. dvi: {DIF_INSTALLDEVICE - exit(0xe0000219)} 15:20:13.999 ump: Server install process exited with code 0xe0000219 15:20:14.005 ump: {Plug and Play Service: Device Install exit(e0000219)} dvi: {Build Driver List} 15:20:14.007 ! dvi: Driver list already built dvi: {Build Driver List - exit(0x00000000)} 15:20:14.007 dvi: {DIF_SELECTBESTCOMPATDRV} 15:20:14.008 dvi: No class installer for 'Root Enumerated Hid Device (sample)' dvi: Default installer: Enter 15:20:14.009 dvi: {Select Best Driver} dvi: Selected driver installs from section [VHidMini.Inst] in 'c:\vhidmini\vhidmini.inf'. dvi: Class GUID of device remains: {745a17a0-74d3-11d0-b6fe-00a0c90f57da}. dvi: Set selected driver complete. dvi: Selected: dvi: Description - [Root Enumerated Hid Device (sample)] dvi: InfFile - [c:\vhidmini\vhidmini.inf] dvi: Section - [VHidMini.Inst] dvi: Signer - [Not digitally signed] dvi: Rank - [0x80ff0000] dvi: {Select Best Driver - exit(0x00000000)} dvi: Default installer: Exit dvi: {DIF_SELECTBESTCOMPATDRV - exit(0x00000000)} 15:20:14.014 dvi: {DIF_NEWDEVICEWIZARD_FINISHINSTALL} 15:20:14.015 dvi: No class installer for 'Root Enumerated Hid Device (sample)' dvi: Default installer: Enter 15:20:14.016 dvi: Default installer: Exit dvi: {DIF_NEWDEVICEWIZARD_FINISHINSTALL - exit(0xe000020e)} 15:20:14.016 <<< Section end 2006/12/18 15:20:14.017 <<< [Exit status: SUCCESS] ----- Original Message ----- From: <john(a)cwtek.com.tw> Newsgroups: microsoft.public.development.device.drivers Sent: Thursday, December 14, 2006 3:32 PM Subject: How to install VHIDMINI driver program on VISTA 64BIT OS > Hi, > > My device need setup 2 drivers, one driver manage USB > communication with device, the other is a virtual HID class driver > which enumerate some HID devices such as keyboard, mouse and so on. > 2 drivers can be installed and work normanlly on windows MCE OS, > WINXP 64 bit OS and Vista RC2 32 bit OS. > > > > Now, I need setup this 2 drivers on Vista 64 bit OS. I known that > every driver on Vista 64 bit OS require to pass digital signatures. > Through pressing F8 key after OS started, I can disable the digital > signatures for a while for testing my driver. unfortunately, I only > can setup the USB driver, the HID driver always return failure. > > > > > > My HID class driver is based on the VHIDMINI driver, it locate in > these directory {system disk}\WINDDK\5744\src\hid\vhidmini\sys. I > have tried to setup the VHIDMINI driver by running ''devcon'' tool, > It also return failure. Can someone try to install it on VISTA 64 bit > OS? > > > > > > I check the setupapi.dev.log, it report "Installing NULL driver" > information and other information. I don't understand it. I think > that some infomation in inf file bring out. > > > > I attached these inf and sys files for reference. Any additional > links or information will be greatly appreciated! > > > > Lejianz, > john at cwtek.com.tw > > > THE inf file's content: > > > [Version] > Signature="$CHICAGO$" > Class=HIDClass > ClassGuid={745a17a0-74d3-11d0-b6fe-00a0c90f57da} > Provider=%VENDOR% > CatalogFile=vhidmini.cat > ;LayoutFile=layout.inf > DriverVer=09/21/2006,6.0.5736.1 > > ; > ; Layout.inf (etc.) list all files shipped with the operating system > so the > ; source description sections are only needed if other files are > needed. > ; > ; In order to use IHV drivers, the SourceDisksNames section must > list the > ; disk(s) containing the drivers and the SourceDisksFiles section > must list > ; which disk number each file to be copied is found on. > ; Disk number 99 is used to avoid a conflict with the disk numbers > defined > ; in layout.inf > ; > ; Files used in a driver installation need to be digitally signed > otherwise > ; installation may fail. See documentation elsewhere in the DDK > regarding > ; driver signing. > > [SourceDisksFiles] > vhidmini.sys = 99 > > > > [SourceDisksNames.x86] > 99 = %DISK_NAME%,,,\i386 > > ;[SourceDisksNames.ia64] > ;99 = %DISK_NAME%,,,\ia64 > > [SourceDisksNames.amd64] > 99 = %DISK_NAME%,,,\amd64 > > > > > [DestinationDirs] > CopyFilesSYS = 12 ; should it be 10 to take care of 98 stuff?????? > CopyFilesDLL = 11 ; %SystemRoot%\system or system32 - 98 or > Win2000 > CopyFilesSYS_98 = 10, system32/drivers > > [Manufacturer] > %VENDOR%=Vendor, NTx86, NTia64, NTamd64 > > ; For Win2K > [Vendor] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > ; For XP and later > [Vendor.NTx86] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > [Vendor.NTia64] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > [Vendor.NTamd64] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > > [ControlFlags] > ExcludeFromSelect = HID\MyVirtualHidDevice > > ;=============================================================== > ; VHidMini (Root Enumerated Hid Device) install section > ;=============================================================== > [VHidMini.Inst] > CopyFiles = CopyFilesSYS_98, CopyFilesDLL > AddReg = VHidMini_98me.AddReg > > [VHidMini.Inst.NT] > CopyFiles = CopyFilesSYS, CopyFilesDLL > > [VHidMini.Inst.NT.HW] > AddReg = VHidMini_Parameters.AddReg > > [VHidMini.Inst.NT.Services] > AddService = vhidmini,0x00000002,vhidmini_Service_Inst, > > [CopyFilesSYS] > vhidmini.sys > ;HidClass.sys > ;HidParse.sys > > > [CopyFilesSYS_98] > vhidmini.sys > HidClass.sys > HidParse.sys > > [CopyFilesDLL] > Hid.dll > > [VHidMini_Parameters.AddReg] > HKR,,"ReadFromRegistry",%REG_DWORD%, 0x00000001 > HKR,,"MyReportDescriptor",%REG_BINARY%, 06, 00, FF, 09, 01, A1, 01, > 85, 01, 09, 01, 15, 00, 26, ff, 00, 75, 08, 95, 01, B1, 00, 09, 01, > 15, 00, 26, FF, 00, 75, 08, 95, 01, B1, 00, 09, 01, 75, 08, 95, 01, > 81,00, C0 > > [VHidMini_98me.AddReg] > HKR,,DevLoader,,*ntkern > HKR,,NTMPDriver,,"vhidmini.sys" > > [vhidmini_Service_Inst] > DisplayName = %VHidMini% > ServiceType = %SERVICE_KERNEL_DRIVER% > StartType = %SERVICE_DEMAND_START% > ErrorControl = %SERVICE_ERROR_IGNORE% > ServiceBinary = %12%\vhidmini.sys > > ;=============================================================== > ; VHidDevice (Virtual Hid Device) install section > ; - Only a Null service is installed. > ;=============================================================== > [VHidDevice.Inst] > > [VHidDevice.Inst.NT] > > [VHidDevice.Inst.NT.Services] > AddService = ,0x00000002, ; NULL Service > > > ;================================================================ > [Strings] > ; *******Localizable Strings******* > VENDOR = "Microsoft Corp" > VHidMini = "Root Enumerated Hid Device (sample)" > VHidDevice = "Virtual Hid Device (sample)" > DISK_NAME = "Virtual Hid Device Sample Install Disk" > ; *******Non Localizable Strings******* > > SERVICE_BOOT_START = 0x0 > SERVICE_SYSTEM_START = 0x1 > SERVICE_AUTO_START = 0x2 > SERVICE_DEMAND_START = 0x3 > SERVICE_DISABLED = 0x4 > > SERVICE_KERNEL_DRIVER = 0x1 > SERVICE_ERROR_IGNORE = 0x0 > SERVICE_ERROR_NORMAL = 0x1 > SERVICE_ERROR_SEVERE = 0x2 > SERVICE_ERROR_CRITICAL = 0x3 > > REG_EXPAND_SZ = 0x00020000 > REG_DWORD = 0x00010001 > REG_MULTI_SZ = 0x00010000 > REG_BINARY = 0x00000001 > REG_SZ = 0x00000000 > > > > > > > > > > <john(a)cwtek.com.tw> wrote in message news:rfu1o2duph62dbq9488efvda3nhrbrk70h(a)4ax.com... > Hi, > > My device need setup 2 drivers, one driver manage USB > communication with device, the other is a virtual HID class driver > which enumerate some HID devices such as keyboard, mouse and so on. > 2 drivers can be installed and work normanlly on windows MCE OS, > WINXP 64 bit OS and Vista RC2 32 bit OS. > > > > Now, I need setup this 2 drivers on Vista 64 bit OS. I known that > every driver on Vista 64 bit OS require to pass digital signatures. > Through pressing F8 key after OS started, I can disable the digital > signatures for a while for testing my driver. unfortunately, I only > can setup the USB driver, the HID driver always return failure. > > > > > > My HID class driver is based on the VHIDMINI driver, it locate in > these directory {system disk}\WINDDK\5744\src\hid\vhidmini\sys. I > have tried to setup the VHIDMINI driver by running ''devcon'' tool, > It also return failure. Can someone try to install it on VISTA 64 bit > OS? > > > > > > I check the setupapi.dev.log, it report "Installing NULL driver" > information and other information. I don't understand it. I think > that some infomation in inf file bring out. > > > > I attached these inf and sys files for reference. Any additional > links or information will be greatly appreciated! > > > > Lejianz, > john at cwtek.com.tw > > > THE inf file's content: > > > [Version] > Signature="$CHICAGO$" > Class=HIDClass > ClassGuid={745a17a0-74d3-11d0-b6fe-00a0c90f57da} > Provider=%VENDOR% > CatalogFile=vhidmini.cat > ;LayoutFile=layout.inf > DriverVer=09/21/2006,6.0.5736.1 > > ; > ; Layout.inf (etc.) list all files shipped with the operating system > so the > ; source description sections are only needed if other files are > needed. > ; > ; In order to use IHV drivers, the SourceDisksNames section must > list the > ; disk(s) containing the drivers and the SourceDisksFiles section > must list > ; which disk number each file to be copied is found on. > ; Disk number 99 is used to avoid a conflict with the disk numbers > defined > ; in layout.inf > ; > ; Files used in a driver installation need to be digitally signed > otherwise > ; installation may fail. See documentation elsewhere in the DDK > regarding > ; driver signing. > > [SourceDisksFiles] > vhidmini.sys = 99 > > > > [SourceDisksNames.x86] > 99 = %DISK_NAME%,,,\i386 > > ;[SourceDisksNames.ia64] > ;99 = %DISK_NAME%,,,\ia64 > > [SourceDisksNames.amd64] > 99 = %DISK_NAME%,,,\amd64 > > > > > [DestinationDirs] > CopyFilesSYS = 12 ; should it be 10 to take care of 98 stuff?????? > CopyFilesDLL = 11 ; %SystemRoot%\system or system32 - 98 or > Win2000 > CopyFilesSYS_98 = 10, system32/drivers > > [Manufacturer] > %VENDOR%=Vendor, NTx86, NTia64, NTamd64 > > ; For Win2K > [Vendor] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > ; For XP and later > [Vendor.NTx86] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > [Vendor.NTia64] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > [Vendor.NTamd64] > %VHidMini% = VHidMini.Inst, > {D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE > %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice > > > [ControlFlags] > ExcludeFromSelect = HID\MyVirtualHidDevice > > ;=============================================================== > ; VHidMini (Root Enumerated Hid Device) install section > ;=============================================================== > [VHidMini.Inst] > CopyFiles = CopyFilesSYS_98, CopyFilesDLL > AddReg = VHidMini_98me.AddReg > > [VHidMini.Inst.NT] > CopyFiles = CopyFilesSYS, CopyFilesDLL > > [VHidMini.Inst.NT.HW] > AddReg = VHidMini_Parameters.AddReg > > [VHidMini.Inst.NT.Services] > AddService = vhidmini,0x00000002,vhidmini_Service_Inst, > > [CopyFilesSYS] > vhidmini.sys > ;HidClass.sys > ;HidParse.sys > > > [CopyFilesSYS_98] > vhidmini.sys > HidClass.sys > HidParse.sys > > [CopyFilesDLL] > Hid.dll > > [VHidMini_Parameters.AddReg] > HKR,,"ReadFromRegistry",%REG_DWORD%, 0x00000001 > HKR,,"MyReportDescriptor",%REG_BINARY%, 06, 00, FF, 09, 01, A1, 01, > 85, 01, 09, 01, 15, 00, 26, ff, 00, 75, 08, 95, 01, B1, 00, 09, 01, > 15, 00, 26, FF, 00, 75, 08, 95, 01, B1, 00, 09, 01, 75, 08, 95, 01, > 81,00, C0 > > [VHidMini_98me.AddReg] > HKR,,DevLoader,,*ntkern > HKR,,NTMPDriver,,"vhidmini.sys" > > [vhidmini_Service_Inst] > DisplayName = %VHidMini% > ServiceType = %SERVICE_KERNEL_DRIVER% > StartType = %SERVICE_DEMAND_START% > ErrorControl = %SERVICE_ERROR_IGNORE% > ServiceBinary = %12%\vhidmini.sys > > ;=============================================================== > ; VHidDevice (Virtual Hid Device) install section > ; - Only a Null service is installed. > ;=============================================================== > [VHidDevice.Inst] > > [VHidDevice.Inst.NT] > > [VHidDevice.Inst.NT.Services] > AddService = ,0x00000002, ; NULL Service > > > ;================================================================ > [Strings] > ; *******Localizable Strings******* > VENDOR = "Microsoft Corp" > VHidMini = "Root Enumerated Hid Device (sample)" > VHidDevice = "Virtual Hid Device (sample)" > DISK_NAME = "Virtual Hid Device Sample Install Disk" > ; *******Non Localizable Strings******* > > SERVICE_BOOT_START = 0x0 > SERVICE_SYSTEM_START = 0x1 > SERVICE_AUTO_START = 0x2 > SERVICE_DEMAND_START = 0x3 > SERVICE_DISABLED = 0x4 > > SERVICE_KERNEL_DRIVER = 0x1 > SERVICE_ERROR_IGNORE = 0x0 > SERVICE_ERROR_NORMAL = 0x1 > SERVICE_ERROR_SEVERE = 0x2 > SERVICE_ERROR_CRITICAL = 0x3 > > REG_EXPAND_SZ = 0x00020000 > REG_DWORD = 0x00010001 > REG_MULTI_SZ = 0x00010000 > REG_BINARY = 0x00000001 > REG_SZ = 0x00000000 > > > > > > > > > >
From: chris.aseltine on 18 Dec 2006 19:50 John Zou wrote: > I check the inf/setupapi.dev.log file and found that the source path in the > section below is error. > > flq: SourcePath - > [C:\Windows\System32\DriverStore\FileRepository\input.inf_85616b02\ä½°#] > > HidClass.sys and HidParse.sys is supplied by Vista System, the source file > exclude them. So the OS can only find them in input.inf according to > compalitable ID. > > But the path input.inf_85616b02\ä½°# is not EXISTED. I've also seen Vista spew 8-bit garbage into setupapi.log when it can't find an inbox driver that you're trying to reference manually in your INF. I don't know if this is a bug or not. The solution I've always used is to tweak your LayoutFile= or Includes= (or whatever) directives so that Setup can find the inbox driver. Try LayoutFile=layout.inf,input.inf or similar.
|
Pages: 1 Prev: usbser.sys throughput problem Next: correct "sources" file for debugging? |