From: L Dunn on
I'm writing a HID driver based on the VHidMini.sys source in the 11/2006 WDK.
I'll use vhidmini in the examples below. If I install vhidmini and there is
alerady a HID driver on the system, such as a USB mouse, the driver installs
an I can use the test program to talk to it.

I'm installing vhidmini on Vista Business 32 and Vista Ultimate 64.

If I install vhidmini as the first ever HID driver, the install fails with a
'The system cannot find the file specified" error. I'm install using Device
Manager by right clicking one of my unknown devices (using HPQ0004 in this
example until our real acpi id is available in the BIOS) and selecting Update
Driver Software..., then choosing Browse my computer for driver software,
then choosing Let me pick from a list of device drivers on my computer, the
choosing Next, then choosing Have Disk, then pointing to the directory where
the driver inf and sys files are located and then choosing Next.

Seems like there is a problem finding hidclass.sys. How do I change the
vhidmini.inf so that the basic HID files (hidclass, hidparse...) get
installed correctly?

Start of inf file
**********
[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
%VHidMini% = VHidMini.Inst, ACPI\HPQ0004
%VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice

; For XP and later
[Vendor.NTx86]
;;%VHidMini% = VHidMini.Inst,
{D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE
%VHidMini% = VHidMini.Inst, ACPI\HPQ0004
%VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice

[Vendor.NTia64]
;;%VHidMini% = VHidMini.Inst,
{D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE
%VHidMini% = VHidMini.Inst, ACPI\HPQ0004
%VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice

[Vendor.NTamd64]
;;%VHidMini% = VHidMini.Inst,
{D49F883C-6486-400a-8C22-1A9EF48577E4}\HID_DEVICE
%VHidMini% = VHidMini.Inst, ACPI\HPQ0004
%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
**********
End of inf file


From: L Dunn on
Here's the setupapi.dev file for the failed attempt.

1st part of setupapi.dev file
***********
[Device Install Log]
OS Version = 6.0.6000
Service Pack = 0.0
Suite = 0x0100
ProductType = 1
Architecture = amd64

[BeginLog]

>>> [Device Install (DiShowUpdateDevice) - ACPI\HPQ0004\3&18D45AA6&0]
>>> Section start 2007/07/02 15:24:28.501
cmd: "C:\Windows\system32\mmc.exe" "C:\Windows\system32\CompMgmt.msc"
dvi: {DIF_UPDATEDRIVER_UI} 15:24:28.501
dvi: No class installer for 'Unknown driver software package'
dvi: No CoInstallers found
dvi: Default installer: Enter 15:24:28.501
dvi: Default installer: Exit
dvi: {DIF_UPDATEDRIVER_UI - exit(0xe000020e)} 15:24:28.516
ndv: {Update Driver Software Wizard for ACPI\HPQ0004\3&18D45AA6&0}
dvi: Set selected driver complete.
dvi: {DIF_SELECTDEVICE} 15:24:33.094
dvi: No class installer for 'Unknown driver software package'
dvi: No CoInstallers found
dvi: {DIF_SELECTDEVICE - exit(0xe000020e)} 15:24:33.094
ui : Prompting user for disk...
ui : DPROMPT result = 0
dvi: {DIF_SELECTDEVICE} 15:24:51.456
dvi: No class installer for 'Unknown driver software package'
dvi: {DIF_SELECTDEVICE - exit(0xe000020e)} 15:24:51.456
inf: {SetupCopyOEMInf: f:\vhidmini\vhidmini.inf} 15:24:54.971
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings] <src =
normal>)
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings] <src =
normal>)
dvi: {Staging Package To Driver Store - phase 1}
sto: Inf Path = f:\vhidmini\vhidmini.inf
sto: Flags = 0
sto: Processor Architecture = 9
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
sto: Copying driver package. Inf =
f:\vhidmini\vhidmini.inf, Destination =
C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - 'f:\vhidmini'
flq: SourceFilename - 'vhidmini.inf'
flq: TargetDirectory-
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}'
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings]
<src = normal>)
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - 'f:\vhidmini'
flq: SourcePath - '\amd64\'
flq: SourceFilename - 'vhidmini.sys'
flq: TargetDirectory-
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\amd64'
flq: SourceDesc - 'Virtual Hid Device Sample
Install Disk'
flq: {FILE_QUEUE_COPY exit(0x00000000)}
flq: {_commit_file_queue}
flq: {SPFILENOTIFY_STARTQUEUE}
flq: {SPFILENOTIFY_STARTQUEUE - returned 0x00000001}
flq: {_commit_copy_subqueue}
flq: subqueue count=2
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - returned
0x00000001}
flq: source media:
flq: SourcePath - [f:\vhidmini]
flq: SourceFile - [vhidmini.inf]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned
0x00000001}
flq: CopyFile: 'f:\vhidmini\vhidmini.inf'
flq: to:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\SET4C23.tmp'
flq: MoveFile:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\SET4C23.tmp'
flq: to:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\vhidmini.inf'
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned
0x00000000}
flq: {_commit_copyfile exit OK}
flq: source media:
flq: Description - [Virtual Hid Device
Sample Install Disk]
flq: SourcePath - [f:\vhidmini\amd64]
flq: SourceFile - [vhidmini.sys]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned
0x00000001}
flq: CopyFile:
'f:\vhidmini\amd64\vhidmini.sys'
flq: to:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\amd64\SET4C44.tmp'
flq: MoveFile:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\amd64\SET4C44.tmp'
flq: to:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\amd64\vhidmini.sys'
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned
0x00000000}
flq: {_commit_copyfile exit OK}
flq: {SPFILENOTIFY_ENDSUBQUEUE}
flq: {SPFILENOTIFY_ENDSUBQUEUE - returned
0x00000000}
flq: {_commit_copy_subqueue exit OK}
flq: {SPFILENOTIFY_ENDQUEUE}
flq: {SPFILENOTIFY_ENDQUEUE - returned 0x00000000}
flq: {_commit_file_queue exit OK}
sto: Driver Package successfully copied to
C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}
inf: Opened INF:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\vhidmini.inf' ([strings]
<src = normal>)
pol: {Driver package policy check} 15:24:55.190
pol: {Driver package policy check - exit(0x00000000)}
15:24:55.190
dvi: Staging Package To Driver Store - phase 2
inf: Opened INF:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF:
'C:\Users\lsd\{4c2aa787-75df-4de3-b018-d588dd3b42fd}\vhidmini.inf' ([strings]
<src = normal>)
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
! sto: The Driver Package does not contain a catalog
file, but user wants to install anyway.
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
sto: Machine Name =
sto: File Repository =
C:\Windows\system32\DriverStore\FileRepository
sto: Repository =
C:\Windows\system32\DriverStore\Repository
sto: Inf Path =
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf
sto: Architecture = amd64
sto: PackageRoot =
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package
sto: Search Path =
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package;C:\Windows\INF
sto: Flags = 0
sto: Package Hash = AEFEEE29817BD599
sto: Signer Score = 0xff000000
sto: Digital Signer =
sto: Setting system restore point.
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
inf: Opened INF:
'C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.inf' ([strings] <src = normal>)
! cmi: Missing referenced INF file "layout.inf"
! cmi:
File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.cat,
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidm
! cmi: CopyFile from
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.cat
to
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.cat failed 2
! cmi:
CopyFile(source=C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\vhidmini.cat,
destination=\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.
! cmi:
File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\HidClass.sys,
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\HidCl
! cmi: CopyFile from
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\HidClass.sys
to
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\HidClass.sys failed 2
! cmi:
CopyFile(source=C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\HidClass.sys,
destination=\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\HidClass.
! cmi:
File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\HidParse.sys,
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\HidPa
! cmi: CopyFile from
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\HidParse.sys
to
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\HidParse.sys failed 2
! cmi:
CopyFile(source=C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\HidParse.sys,
destination=\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\HidParse.
! cmi:
File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\Hid.dll,
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\Hid.dll, 0
! cmi: CopyFile from
C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\Hid.dll
to
\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\Hid.dll failed 2
! cmi:
CopyFile(source=C:\Windows\system32\DriverStore\Temp\{3a0a99e5-9e90-40d0-b67a-36e1d2613016}\Package\Hid.dll,
destination=\\?\C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\Hid.dll, failI
idb: Registered 'vhidmini.inf' to driver store path
'vhidmini.inf_6463d3cd'
idb: Published 'vhidmini.inf_6463d3cd\vhidmini.inf'
to 'C:\Windows\INF\oem5.inf'
sto: Commiting system restore point.
sto: {Staging Package To Driver Store - phase 2
exit(00000000)}
sto: {Staging Package To Driver Store - phase 1 exit(00000000)}
inf: Driver Store location:
C:\Windows\system32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf
inf: Published Inf Path: C:\Windows\INF\oem5.inf
inf: Opened INF: 'f:\vhidmini\vhidmini.inf' ([strings] <src =
normal>)
inf: Installing Catalog f:\vhidmini\vhidmini.cat as: oem5.CAT
! inf: Failed to Catalog - error ignored
! inf: Error 2: The system cannot find the file specified.
inf: OEM source media location: f:\vhidmini\
inf: {SetupCopyOEMInf exit (0x00000000)} 15:25:08.143
dvi: Searching for hardware ID(s):
dvi: acpi\hpq0004
dvi: *hpq0004
inf: Opened INF:
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf' ([strings] <src=drvstore>)
sig: {_VERIFY_FILE_SIGNATURE} 15:25:08.159
sig: Key = vhidmini.inf
sig: FilePath =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf
sig: Catalog =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.cat
! sig: Verifying file against specific (valid) catalog failed!
(0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:25:08.159
sig: {_VERIFY_FILE_SIGNATURE} 15:25:08.159
sig: Key = vhidmini.inf
sig: FilePath =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf
sig: Catalog =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.cat
! sig: Verifying file against specific Authenticode(tm) catalog
failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or
writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:25:08.175
dvi: Selected driver installs from section [VHidMini.Inst] in
'c:\windows\system32\driverstore\filerepository\vhidmini.inf_6463d3cd\vhidmini.inf'.
dvi: Class GUID of device changed to:
{745a17a0-74d3-11d0-b6fe-00a0c90f57da}.
dvi: Set selected driver complete.
dvi: {Plug and Play Service: Device Install for
ACPI\HPQ0004\3&18D45AA6&0}
ump: Creating Install Process: DrvInst.exe 15:25:08.175
ndv: Infpath=C:\Windows\INF\oem5.inf
ndv:
DriverNodeName=vhidmini.inf:Vendor.NTamd64:VHidMini.Inst:6.0.5736.1:acpi\hpq0004
ndv:
DriverStorepath=C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf
ndv: Building driver list from driver node strong name...
dvi: Searching for hardware ID(s):
dvi: acpi\hpq0004
dvi: *hpq0004
inf: Opened INF:
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf' ([strings] <src=drvstore>)
inf: Saved PNF:
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.PNF' (Language = 0409)
sig: {_VERIFY_FILE_SIGNATURE} 15:25:08.284
sig: Key = vhidmini.inf
sig: FilePath =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf
sig: Catalog =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.cat
! sig: Verifying file against specific (valid) catalog
failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:25:08.628
sig: {_VERIFY_FILE_SIGNATURE} 15:25:08.628
sig: Key = vhidmini.inf
sig: FilePath =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.inf
sig: Catalog =
C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\vhidmini.cat
! sig: Verifying file against specific Authenticode(tm)
catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading
or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:25:08.643
dvi: Selected driver installs from section [VHidMini.Inst] in
'c:\windows\system32\driverstore\filerepository\vhidmini.inf_6463d3cd\vhidmini.inf'.

From: L Dunn on
2nd half of setupapi.dev

dvi: Class GUID of device changed to:
{745a17a0-74d3-11d0-b6fe-00a0c90f57da}.
dvi: Set selected driver complete.
ndv: {Core Device Install}
inf: Opened INF: 'C:\Windows\INF\oem5.inf' ([strings]
<src=oempath>)
inf: Saved PNF: 'C:\Windows\INF\oem5.PNF' (Language =
0409)
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:25:08.675
dvi: No class installer for 'Root Enumerated Hid
Device (sample)'
dvi: No CoInstallers found
dvi: Default installer: Enter 15:25:08.675
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:25:08.675
ndv: Installing files...
dvi: {DIF_INSTALLDEVICEFILES} 15:25:08.690
dvi: No class installer for 'Root Enumerated Hid
Device (sample)'
dvi: Default installer: Enter 15:25:08.690
dvi: {Install FILES}
inf: Opened PNF:
'c:\windows\system32\driverstore\filerepository\vhidmini.inf_6463d3cd\vhidmini.inf' ([strings] <src=drvstore>)
inf: {Install Inf Section
[VHidMini.Inst.NT]}
inf:
CopyFiles=CopyFilesSYS,CopyFilesDLL (vhidmini.inf line 80)
cpy: Open PnpLockdownPolicy: Err=2.
This is OK. Use LockDownPolicyDefault
flq: QueueSingleCopy...
flq: Inf :
'c:\windows\system32\driverstore\filerepository\vhidmini.inf_6463d3cd\vhidmini.inf'
flq: SourceInf:
'c:\windows\system32\driverstore\filerepository\vhidmini.inf_6463d3cd\vhidmini.inf'
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on
SourceInf
flq: SourceRootPath:
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd'
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath -
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd'
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_6463d3cd\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_6463d3cd\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_6463d3cd\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_6463d3cd'
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath -
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd'
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:25:08.737
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: Source file
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\Hid.dll' does not exist while the target does
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=3
dvi: {_SCAN_FILE_QUEUE exit(0, 0x00000000)}
ndv: Committing file queue...
flq: {_COMMIT_FILE_QUEUE}
flq: CommitQ DelNodes=0 RenNodes=0 BackNodes=0
CopyNodes=3
flq: {SPFILENOTIFY_STARTQUEUE}
flq: {SPFILENOTIFY_STARTQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - exit(0x00000001)}
flq: SPFILENOTIFY_NEEDMEDIA:
flq: Description - [Virtual Hid Device Sample
Install Disk]
flq: SourcePath -
[C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\amd64]
flq: SourceFile - [vhidmini.sys]
flq: Flags - 0x00000000
flq: {SPFILENOTIFY_NEEDMEDIA}
flq: {SPFILENOTIFY_NEEDMEDIA - exit(0x00000001)}
flq: {SPFILENOTIFY_STARTCOPY}
ndv: Saving LastKnownGood file
C:\Windows\system32\DRIVERS\vhidmini.sys (copy)
flq: {SPFILENOTIFY_STARTCOPY - exit(0x00000001)}
cpy: CopyFile:
'C:\Windows\System32\DriverStore\FileRepository\vhidmini.inf_6463d3cd\amd64\vhidmini.sys'
cpy: to:
'C:\Windows\system32\DRIVERS\SET816C.tmp'
cpy: CopyFile Drp is active
cpy: Source File
'C:\Windows\system32\DRIVERS\SET816C.tmp' is NOT signed NT5 Crypto.
cpy: DrpGetFileProt Status=2 dwClass=0
cpy: MoveFile:
'C:\Windows\system32\DRIVERS\SET816C.tmp'
cpy: to:
'C:\Windows\system32\DRIVERS\vhidmini.sys'
cpy: DrpSetRegFileProt
'C:\Windows\system32\DRIVERS\vhidmini.sys' Status=0 Class=OEM Legacy
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - 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:25:08.815
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
ACPI\HPQ0004\3&18D45AA6&0}
ump: Creating Install Process: DrvInst.exe 15:25:09.221
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:25:09.237
dvi: No class installer for 'Unknown driver software
package'
dvi: No CoInstallers found
dvi: Default installer: Enter 15:25:09.237
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:25:09.237
dvi: {DIF_INSTALLDEVICE} 15:25:09.237
dvi: No class installer for 'Unknown driver software
package'
dvi: Default installer: Enter 15:25:09.237
! dvi: Installing NULL driver!
dvi: Writing common driver property settings.
dvi: {Restarting Devices} 15:25:09.253
dvi: Restart: ACPI\HPQ0004\3&18D45AA6&0
dvi: Restart complete.
dvi: {Restarting Devices exit} 15:25:09.846
dvi: Default installer: Exit
dvi: {DIF_INSTALLDEVICE - exit(0x00000000)} 15:25:09.846
ump: Server install process exited with code 0x00000000
15:25:09.846
ump: {Plug and Play Service: Device Install exit(00000000)}
ndv: {Update Driver Software Wizard exit(00000002)}
<<< Section end 2007/07/02 15:25:17.034
<<< [Exit status: FAILURE(0x00000002)]



From: Sheeshpaul Kamboj on
hidclass.sys, hidparse.sys and hid.dll are already present on vista, there is
no need to copy them.

Modify CopyFilesSYS section to include only vhidmini.sys

[CopyFilesSYS]
vhidmini.sys

and remove hid.dll from CopyFilesDLL section

[CopyFilesDLL]

Before you install, make sure you delete previously installed driver from
driver store using pnputil utility. In this case from admin command prompt
run the following

pnputil -d oem5.inf


From: L Dunn on
Thanks for your help. That worked great for vhidmini and my driver as well. I
had tried deleting the HID items before but I think having the failed
installs hanging around without using pnputil -d was holding me back. Thanks
again.


"Sheeshpaul Kamboj" wrote:

> hidclass.sys, hidparse.sys and hid.dll are already present on vista, there is
> no need to copy them.
>
> Modify CopyFilesSYS section to include only vhidmini.sys
>
> [CopyFilesSYS]
> vhidmini.sys
>
> and remove hid.dll from CopyFilesDLL section
>
> [CopyFilesDLL]
>
> Before you install, make sure you delete previously installed driver from
> driver store using pnputil utility. In this case from admin command prompt
> run the following
>
> pnputil -d oem5.inf
>
>