Dynambus.sys KMDF sample amd64 fails to install

This question is on the subject of developing a virtual bus to enumerate devices of an ordinary class. The first step is to install a virtual dynamic bus enumerator, based on the toaster bus sample “dynambus” and, once this is working, cause the bus to enumerate the desired devices.

I’m having a problem with the installation of just the dynamic bus enumerator on Vista 64 (amd64). No other device drivers are being installed concurrently. I’ve tried building the toaster KMDF dynamic bus driver sample (unmodified) on both versions of WDK_6001 and get the same results.

The first triple-bang (!!!) error reported in setupapi.dev.log is:
!!! dvi: CoInstaller 2: failed(0x00000308)!
!!! dvi: Error 776: The client of a component requested an operation which is not valid given the state of the component instance.

Followed by:
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.

As I’m installing a system device class, it seems that no other class drivers should be necessary untill a device is discovered or enumerated by the bus.

The .inf has been modified to specify the checked version of the WDF coinstaller. I’ve tried this with and without signed .cat files.

Here is the entire setupapi.dev.log dump:


>> [Device Install (DiInstallDevice) - ROOT\UNKNOWN\0001]
>> Section start 2009/02/03 15:54:16.796
cmd: “C:\Windows\system32\mmc.exe” “C:\Windows\system32\devmgmt.msc”
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
inf: {SetupCopyOEMInf: c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf} 15:54:16.812
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
dvi: {Staging Package To Driver Store - phase 1}
sto: Inf Path = c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf
sto: Flags = 0
sto: Processor Architecture = 9
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
sto: Copying driver package. Inf = c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf, Destination = C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourceFilename - ‘dynambus.inf’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourcePath - ''
flq: SourceFilename - ‘dynambus.sys’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourcePath - ''
flq: SourceFilename - ‘wdfcoinstaller01007_chk.dll’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
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=3
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - returned 0x00000001}
flq: source media:
flq: SourcePath - [c:\s3graphics\virtscreen_dbg_test\dynambus]
flq: SourceFile - [dynambus.inf]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC2C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC2C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned 0x00000000}
flq: {_commit_copyfile exit OK}
flq: source media:
flq: Description - [Toaster Dynamic Bus Installation Disk #1]
flq: SourcePath - [c:\s3graphics\virtscreen_dbg_test\dynambus]
flq: SourceFile - [dynambus.sys]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.sys’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC4C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC4C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.sys’
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned 0x00000000}
flq: {_commit_copyfile exit OK}
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\wdfcoinstaller01007_chk.dll’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC7C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC7C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\wdfcoinstaller01007_chk.dll’
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\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
pol: {Driver package policy check} 15:54:17.093
pol: {Driver package policy check - exit(0x00000000)} 15:54:17.093
dvi: Staging Package To Driver Store - phase 2
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! sto: The Driver Package does not contain a catalog file, but user wants to install anyway.
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
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{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf
sto: Architecture = amd64
sto: PackageRoot = C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package
sto: Search Path = C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package;C:\Windows\INF
sto: Flags = 0
sto: Package Hash = 627EB2F48585BD43
sto: Signer Score = 0xff000000
sto: Digital Signer =
sto: Setting system restore point.
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! sto: Setting system restore point failed with = 0x43C
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! cmi: File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat, \?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\Km
! cmi: CopyFile from C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat to \?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat fa
! cmi: CopyFile(source=C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat, destination=\?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSa
idb: Registered ‘dynambus.inf’ to driver store path ‘dynambus.inf_e1eaefee’
idb: Published ‘dynambus.inf_e1eaefee\dynambus.inf’ to ‘C:\Windows\INF\oem33.inf’
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\dynambus.inf_e1eaefee\dynambus.inf
inf: Published Inf Path: C:\Windows\INF\oem33.inf
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Installing Catalog c:\s3graphics\virtscreen_dbg_test\dynambus\KmdfSamples.cat as: oem33.CAT
! inf: Failed to Catalog - error ignored
! inf: Error 2: The system cannot find the file specified.
inf: OEM source media location: c:\s3graphics\virtscreen_dbg_test\dynambus<br> inf: {SetupCopyOEMInf exit (0x00000000)} 15:56:14.796
inf: Opened INF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.812
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific (valid) catalog failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:56:14.812
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.812
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific Authenticode™ catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:56:14.828
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:14.828
ndv: Infpath=C:\Windows\INF\oem33.inf
ndv: DriverNodeName=dynambus.inf:Standard.NTAMD64:ToasterDynamicBus_Device:6.0.6001.18000:root\dynambus
ndv: DriverStorepath=C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
ndv: Building driver list from driver node strong name…
inf: Opened INF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: Saved PNF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.PNF’ (Language = 0409)
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.906
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific (valid) catalog failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:56:14.937
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.937
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific Authenticode™ catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:56:14.953
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
ndv: {Core Device Install}
inf: Opened INF: ‘C:\Windows\INF\oem33.inf’ ([strings] )
inf: Saved PNF: ‘C:\Windows\INF\oem33.PNF’ (Language = 0409)
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:14.968
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: CoInstaller 1: Enter 15:56:14.984
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:14.984
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:15.000
ndv: Installing files…
dvi: {DIF_INSTALLDEVICEFILES} 15:56:15.000
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.000
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.000
dvi: {Install FILES}
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: {Install Inf Section [ToasterDynamicBus_Device.NT]}
inf: CopyFiles=Drivers_Dir (dynambus.inf line 53)
cpy: Open PnpLockdownPolicy: Err=2. This is OK. Use LockDownPolicyDefault
flq: QueueSingleCopy…
flq: Inf : ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceInf: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on SourceInf
flq: SourceRootPath: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: SourceFilename - ‘dynambus.sys’
flq: TargetDirectory- ‘C:\Windows\system32\DRIVERS’
flq: TargetFilename - ‘dynambus.sys’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: {Install Inf Section [ToasterDynamicBus_Device.NT] exit (0x00000000)}
dvi: Processing co-installer registration section [ToasterDynamicBus_Device.NT.CoInstallers].
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers]}
inf: CopyFiles=ToasterDynamicBus_Device_CoInstaller_CopyFiles (dynambus.inf line 88)
flq: QueueSingleCopy…
flq: Inf : ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceInf: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on SourceInf
flq: SourceRootPath: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: SourceFilename - ‘WdfCoInstaller01007_chk.dll’
flq: TargetDirectory- ‘C:\Windows\system32’
flq: TargetFilename - ‘WdfCoInstaller01007_chk.dll’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers] exit (0x00000000)}
dvi: Co-installers registered.
dvi: {Install INTERFACES}
dvi: Installing section [ToasterDynamicBus_Device.NT.Interfaces]
dvi: {Install INTERFACES exit 00000000}
dvi: {Install FILES exit (0x00000000)}
dvi: Default installer: Exit
dvi: {DIF_INSTALLDEVICEFILES - exit(0x00000000)} 15:56:15.062
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=2
flq: File ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’ pruned from copy.
sig: Using catalog ‘C:\Windows\system32\CatRoot{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\oem30.CAT’.
flq: {SPFILENOTIFY_CABINETINFO}
flq: {SPFILENOTIFY_CABINETINFO - exit(0x00000000)}
flq: {SPFILENOTIFY_FILEEXTRACTED}
flq: {SPFILENOTIFY_FILEEXTRACTED - exit(0x00000000)}
flq: {SPFILENOTIFY_CABINETINFO}
flq: {SPFILENOTIFY_CABINETINFO - exit(0x00000000)}
flq: {SPFILENOTIFY_FILEEXTRACTED}
flq: {SPFILENOTIFY_FILEEXTRACTED - exit(0x00000000)}
! sig: VerifyTrustFailed for C:\Windows\system32\WdfCoInstaller01007_chk.dll.
! 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\WdfCoInstaller01007_chk.dll’ Status=0 Class=OEM Legacy
flq: ScanQ action=200 DoPruning=32
flq: ScanQ end Validity flags=620 CopyNodes=1
dvi: {_SCAN_FILE_QUEUE exit(0, 0x00000000)}
ndv: Committing file queue…
flq: {_COMMIT_FILE_QUEUE}
flq: CommitQ DelNodes=0 RenNodes=0 BackNodes=0 CopyNodes=1
flq: {SPFILENOTIFY_STARTQUEUE}
flq: {SPFILENOTIFY_STARTQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - exit(0x00000001)}
flq: SPFILENOTIFY_NEEDMEDIA:
flq: Description - [Toaster Dynamic Bus Installation Disk #1]
flq: SourcePath - [C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee]
flq: SourceFile - [dynambus.sys]
flq: Flags - 0x00000000
flq: {SPFILENOTIFY_NEEDMEDIA}
flq: {SPFILENOTIFY_NEEDMEDIA - exit(0x00000001)}
cpy: CopyFile: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: to: ‘C:\Windows\Temp\OLD7AF1.tmp’
flq: {SPFILENOTIFY_STARTCOPY}
ndv: Saving LastKnownGood file C:\Windows\system32\DRIVERS\dynambus.sys (copy)
cpy: CopyFile: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: to: ‘C:\Windows\LastGood\TMP7B01.tmp’
flq: {SPFILENOTIFY_STARTCOPY - exit(0x00000001)}
cpy: CopyFile: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.sys’
cpy: to: ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’
cpy: CopyFile Drp is active
cpy: Source File ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’ is NOT signed NT5 Crypto.
cpy: DrpGetFileProt Status=0 dwClass=5
cpy: MoveFile: ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’
cpy: to: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: DrpSetRegFileProt ‘C:\Windows\system32\DRIVERS\dynambus.sys’ Status=0 Class=OEM Legacy
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - exit(0x00000001)}
flq: {SPFILENOTIFY_ENDSUBQUEUE}
flq: {SPFILENOTIFY_ENDSUBQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_ENDQUEUE}
flq: {SPFILENOTIFY_ENDQUEUE - exit(0x00000001)}
flq: {_COMMIT_FILE_QUEUE exit(0x00000000)}
ndv: Registering CoInstallers…
dvi: {DIF_REGISTER_COINSTALLERS} 15:56:15.484
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.500
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.500
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers]}
inf: AddReg=ToasterDynamicBus_Device_CoInstaller_AddReg (dynambus.inf line 87)
inf: HKR,CoInstallers32,0x00010000,WdfCoInstaller01007_chk.dll,WdfCoInstaller (dynambus.inf line 91)
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers] exit (0x00000000)}
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:15.515
dvi: CoInstaller 1: Enter 15:56:15.515
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.515
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:15.531
dvi: Co-installers registered.
dvi: Default installer: Exit
dvi: {DIF_REGISTER_COINSTALLERS - exit(0x00000000)} 15:56:15.531
ndv: Installing interfaces…
dvi: {DIF_INSTALLINTERFACES} 15:56:15.531
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:15.546
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:15.546
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:15.593
dvi: {Install INTERFACES}
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
dvi: Installing section [ToasterDynamicBus_Device.NT.Interfaces]
dvi: {Install INTERFACES exit 00000000}
dvi: Default installer: Exit
dvi: {DIF_INSTALLINTERFACES - exit(0x00000000)} 15:56:15.609
ndv: Installing device…
dvi: {DIF_INSTALLDEVICE} 15:56:15.609
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.609
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:15.609
inf: Opened PNF: ‘C:\Windows\INF\oem33.inf’ ([strings] )
!!! dvi: CoInstaller 2: failed(0x00000308)!
!!! dvi: Error 776: The client of a component requested an operation which is not valid given the state of the component instance.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:16.609
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0x00000308)} 15:56:16.609
!!! ndv: Error(00000308) installing device!
ndv: Device install status=0x00000308
ndv: Performing device install final cleanup…
! ndv: Queueing up error report since device installation failed…
ndv: {Core Device Install - exit(0x00000308)}
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:16.625
dvi: CoInstaller 1: Enter 15:56:16.625
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:16.625
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:16.671
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:16.671
ump: Server install process exited with code 0x00000308 15:56:16.687
ump: {Plug and Play Service: Device Install exit(00000308)}
ndv: Device Install failed for new device…installing NULL driver.
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:17.000
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:17.046
dvi: No class installer for ‘System devices’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:17.078
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.078
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.125
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:17.125
dvi: {DIF_INSTALLDEVICE} 15:56:17.125
dvi: No class installer for ‘System devices’
dvi: CoInstaller 1: Enter 15:56:17.125
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.125
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:17.187
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0xe0000203)} 15:56:17.187
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:17.187
dvi: CoInstaller 1: Enter 15:56:17.203
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.203
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.234
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:17.234
ump: Server install process exited with code 0xe0000203 15:56:17.250
ump: {Plug and Play Service: Device Install exit(e0000203)}
<<< Section end 2009/02/03 15:56:17.250
<<< [Exit status: FAILURE(0x00000308)]

>>> [Device Install (DiInstallDevice) - ROOT\UNKNOWN\0001]
>>> Section start 2009/02/03 15:56:17.250
cmd: “C:\Windows\system32\mmc.exe” “C:\Windows\system32\devmgmt.msc”
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:17.265
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:17.312
dvi: No class installer for ‘System devices’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:17.359
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.359
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.406
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:17.406
dvi: {DIF_INSTALLDEVICE} 15:56:17.406
dvi: No class installer for ‘System devices’
dvi: CoInstaller 1: Enter 15:56:17.406
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.421
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:17.468
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0xe0000203)} 15:56:17.468
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:17.468
dvi: CoInstaller 1: Enter 15:56:17.468
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.484
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.500
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:17.515
ump: Server install process exited with code 0xe0000203 15:56:17.515
ump: {Plug and Play Service: Device Install exit(e0000203)}
<<< Section end 2009/02/03 15:56:17.531
<<< [Exit status: FAILURE(0xe0000203)]

Are you installing this on a chk OS? If not, you need to use the release version of the KMDF coinstaller, wdfcoinstaller01007.dll. the chk version of the coinstaller is for chk OS builds, not chk builds of your driver. Also, you will need to install while a kernel debugger is attached so that unsigned drivers will be allowed to load

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@jupiter.com
Sent: Tuesday, February 03, 2009 11:15 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Dynambus.sys KMDF sample amd64 fails to install

This question is on the subject of developing a virtual bus to enumerate devices of an ordinary class. The first step is to install a virtual dynamic bus enumerator, based on the toaster bus sample “dynambus” and, once this is working, cause the bus to enumerate the desired devices.

I’m having a problem with the installation of just the dynamic bus enumerator on Vista 64 (amd64). No other device drivers are being installed concurrently. I’ve tried building the toaster KMDF dynamic bus driver sample (unmodified) on both versions of WDK_6001 and get the same results.

The first triple-bang (!!!) error reported in setupapi.dev.log is:
!!! dvi: CoInstaller 2: failed(0x00000308)!
!!! dvi: Error 776: The client of a component requested an operation which is not valid given the state of the component instance.

Followed by:
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.

As I’m installing a system device class, it seems that no other class drivers should be necessary untill a device is discovered or enumerated by the bus.

The .inf has been modified to specify the checked version of the WDF coinstaller. I’ve tried this with and without signed .cat files.

Here is the entire setupapi.dev.log dump:


>> [Device Install (DiInstallDevice) - ROOT\UNKNOWN\0001]
>> Section start 2009/02/03 15:54:16.796
cmd: “C:\Windows\system32\mmc.exe” “C:\Windows\system32\devmgmt.msc”
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
inf: {SetupCopyOEMInf: c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf} 15:54:16.812
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
dvi: {Staging Package To Driver Store - phase 1}
sto: Inf Path = c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf
sto: Flags = 0
sto: Processor Architecture = 9
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
sto: Copying driver package. Inf = c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf, Destination = C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourceFilename - ‘dynambus.inf’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourcePath - ''
flq: SourceFilename - ‘dynambus.sys’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourcePath - ''
flq: SourceFilename - ‘wdfcoinstaller01007_chk.dll’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
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=3
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - returned 0x00000001}
flq: source media:
flq: SourcePath - [c:\s3graphics\virtscreen_dbg_test\dynambus]
flq: SourceFile - [dynambus.inf]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC2C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC2C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned 0x00000000}
flq: {_commit_copyfile exit OK}
flq: source media:
flq: Description - [Toaster Dynamic Bus Installation Disk #1]
flq: SourcePath - [c:\s3graphics\virtscreen_dbg_test\dynambus]
flq: SourceFile - [dynambus.sys]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.sys’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC4C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC4C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.sys’
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned 0x00000000}
flq: {_commit_copyfile exit OK}
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\wdfcoinstaller01007_chk.dll’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC7C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC7C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\wdfcoinstaller01007_chk.dll’
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\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
pol: {Driver package policy check} 15:54:17.093
pol: {Driver package policy check - exit(0x00000000)} 15:54:17.093
dvi: Staging Package To Driver Store - phase 2
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! sto: The Driver Package does not contain a catalog file, but user wants to install anyway.
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
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{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf
sto: Architecture = amd64
sto: PackageRoot = C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package
sto: Search Path = C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package;C:\Windows\INF
sto: Flags = 0
sto: Package Hash = 627EB2F48585BD43
sto: Signer Score = 0xff000000
sto: Digital Signer =
sto: Setting system restore point.
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! sto: Setting system restore point failed with = 0x43C
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! cmi: File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat, \?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\Km
! cmi: CopyFile from C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat to \?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat fa
! cmi: CopyFile(source=C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat, destination=\?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSa
idb: Registered ‘dynambus.inf’ to driver store path ‘dynambus.inf_e1eaefee’
idb: Published ‘dynambus.inf_e1eaefee\dynambus.inf’ to ‘C:\Windows\INF\oem33.inf’
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\dynambus.inf_e1eaefee\dynambus.inf
inf: Published Inf Path: C:\Windows\INF\oem33.inf
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Installing Catalog c:\s3graphics\virtscreen_dbg_test\dynambus\KmdfSamples.cat as: oem33.CAT
! inf: Failed to Catalog - error ignored
! inf: Error 2: The system cannot find the file specified.
inf: OEM source media location: c:\s3graphics\virtscreen_dbg_test\dynambus<br> inf: {SetupCopyOEMInf exit (0x00000000)} 15:56:14.796
inf: Opened INF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.812
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific (valid) catalog failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:56:14.812
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.812
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific Authenticode™ catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:56:14.828
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:14.828
ndv: Infpath=C:\Windows\INF\oem33.inf
ndv: DriverNodeName=dynambus.inf:Standard.NTAMD64:ToasterDynamicBus_Device:6.0.6001.18000:root\dynambus
ndv: DriverStorepath=C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
ndv: Building driver list from driver node strong name…
inf: Opened INF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: Saved PNF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.PNF’ (Language = 0409)
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.906
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific (valid) catalog failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:56:14.937
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.937
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific Authenticode™ catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:56:14.953
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
ndv: {Core Device Install}
inf: Opened INF: ‘C:\Windows\INF\oem33.inf’ ([strings] )
inf: Saved PNF: ‘C:\Windows\INF\oem33.PNF’ (Language = 0409)
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:14.968
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: CoInstaller 1: Enter 15:56:14.984
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:14.984
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:15.000
ndv: Installing files…
dvi: {DIF_INSTALLDEVICEFILES} 15:56:15.000
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.000
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.000
dvi: {Install FILES}
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: {Install Inf Section [ToasterDynamicBus_Device.NT]}
inf: CopyFiles=Drivers_Dir (dynambus.inf line 53)
cpy: Open PnpLockdownPolicy: Err=2. This is OK. Use LockDownPolicyDefault
flq: QueueSingleCopy…
flq: Inf : ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceInf: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on SourceInf
flq: SourceRootPath: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: SourceFilename - ‘dynambus.sys’
flq: TargetDirectory- ‘C:\Windows\system32\DRIVERS’
flq: TargetFilename - ‘dynambus.sys’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: {Install Inf Section [ToasterDynamicBus_Device.NT] exit (0x00000000)}
dvi: Processing co-installer registration section [ToasterDynamicBus_Device.NT.CoInstallers].
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers]}
inf: CopyFiles=ToasterDynamicBus_Device_CoInstaller_CopyFiles (dynambus.inf line 88)
flq: QueueSingleCopy…
flq: Inf : ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceInf: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on SourceInf
flq: SourceRootPath: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: SourceFilename - ‘WdfCoInstaller01007_chk.dll’
flq: TargetDirectory- ‘C:\Windows\system32’
flq: TargetFilename - ‘WdfCoInstaller01007_chk.dll’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers] exit (0x00000000)}
dvi: Co-installers registered.
dvi: {Install INTERFACES}
dvi: Installing section [ToasterDynamicBus_Device.NT.Interfaces]
dvi: {Install INTERFACES exit 00000000}
dvi: {Install FILES exit (0x00000000)}
dvi: Default installer: Exit
dvi: {DIF_INSTALLDEVICEFILES - exit(0x00000000)} 15:56:15.062
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=2
flq: File ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’ pruned from copy.
sig: Using catalog ‘C:\Windows\system32\CatRoot{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\oem30.CAT’.
flq: {SPFILENOTIFY_CABINETINFO}
flq: {SPFILENOTIFY_CABINETINFO - exit(0x00000000)}
flq: {SPFILENOTIFY_FILEEXTRACTED}
flq: {SPFILENOTIFY_FILEEXTRACTED - exit(0x00000000)}
flq: {SPFILENOTIFY_CABINETINFO}
flq: {SPFILENOTIFY_CABINETINFO - exit(0x00000000)}
flq: {SPFILENOTIFY_FILEEXTRACTED}
flq: {SPFILENOTIFY_FILEEXTRACTED - exit(0x00000000)}
! sig: VerifyTrustFailed for C:\Windows\system32\WdfCoInstaller01007_chk.dll.
! 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\WdfCoInstaller01007_chk.dll’ Status=0 Class=OEM Legacy
flq: ScanQ action=200 DoPruning=32
flq: ScanQ end Validity flags=620 CopyNodes=1
dvi: {_SCAN_FILE_QUEUE exit(0, 0x00000000)}
ndv: Committing file queue…
flq: {_COMMIT_FILE_QUEUE}
flq: CommitQ DelNodes=0 RenNodes=0 BackNodes=0 CopyNodes=1
flq: {SPFILENOTIFY_STARTQUEUE}
flq: {SPFILENOTIFY_STARTQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - exit(0x00000001)}
flq: SPFILENOTIFY_NEEDMEDIA:
flq: Description - [Toaster Dynamic Bus Installation Disk #1]
flq: SourcePath - [C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee]
flq: SourceFile - [dynambus.sys]
flq: Flags - 0x00000000
flq: {SPFILENOTIFY_NEEDMEDIA}
flq: {SPFILENOTIFY_NEEDMEDIA - exit(0x00000001)}
cpy: CopyFile: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: to: ‘C:\Windows\Temp\OLD7AF1.tmp’
flq: {SPFILENOTIFY_STARTCOPY}
ndv: Saving LastKnownGood file C:\Windows\system32\DRIVERS\dynambus.sys (copy)
cpy: CopyFile: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: to: ‘C:\Windows\LastGood\TMP7B01.tmp’
flq: {SPFILENOTIFY_STARTCOPY - exit(0x00000001)}
cpy: CopyFile: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.sys’
cpy: to: ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’
cpy: CopyFile Drp is active
cpy: Source File ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’ is NOT signed NT5 Crypto.
cpy: DrpGetFileProt Status=0 dwClass=5
cpy: MoveFile: ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’
cpy: to: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: DrpSetRegFileProt ‘C:\Windows\system32\DRIVERS\dynambus.sys’ Status=0 Class=OEM Legacy
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - exit(0x00000001)}
flq: {SPFILENOTIFY_ENDSUBQUEUE}
flq: {SPFILENOTIFY_ENDSUBQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_ENDQUEUE}
flq: {SPFILENOTIFY_ENDQUEUE - exit(0x00000001)}
flq: {_COMMIT_FILE_QUEUE exit(0x00000000)}
ndv: Registering CoInstallers…
dvi: {DIF_REGISTER_COINSTALLERS} 15:56:15.484
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.500
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.500
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers]}
inf: AddReg=ToasterDynamicBus_Device_CoInstaller_AddReg (dynambus.inf line 87)
inf: HKR,CoInstallers32,0x00010000,WdfCoInstaller01007_chk.dll,WdfCoInstaller (dynambus.inf line 91)
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers] exit (0x00000000)}
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:15.515
dvi: CoInstaller 1: Enter 15:56:15.515
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.515
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:15.531
dvi: Co-installers registered.
dvi: Default installer: Exit
dvi: {DIF_REGISTER_COINSTALLERS - exit(0x00000000)} 15:56:15.531
ndv: Installing interfaces…
dvi: {DIF_INSTALLINTERFACES} 15:56:15.531
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:15.546
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:15.546
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:15.593
dvi: {Install INTERFACES}
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
dvi: Installing section [ToasterDynamicBus_Device.NT.Interfaces]
dvi: {Install INTERFACES exit 00000000}
dvi: Default installer: Exit
dvi: {DIF_INSTALLINTERFACES - exit(0x00000000)} 15:56:15.609
ndv: Installing device…
dvi: {DIF_INSTALLDEVICE} 15:56:15.609
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.609
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:15.609
inf: Opened PNF: ‘C:\Windows\INF\oem33.inf’ ([strings] )
!!! dvi: CoInstaller 2: failed(0x00000308)!
!!! dvi: Error 776: The client of a component requested an operation which is not valid given the state of the component instance.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:16.609
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0x00000308)} 15:56:16.609
!!! ndv: Error(00000308) installing device!
ndv: Device install status=0x00000308
ndv: Performing device install final cleanup…
! ndv: Queueing up error report since device installation failed…
ndv: {Core Device Install - exit(0x00000308)}
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:16.625
dvi: CoInstaller 1: Enter 15:56:16.625
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:16.625
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:16.671
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:16.671
ump: Server install process exited with code 0x00000308 15:56:16.687
ump: {Plug and Play Service: Device Install exit(00000308)}
ndv: Device Install failed for new device…installing NULL driver.
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:17.000
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:17.046
dvi: No class installer for ‘System devices’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:17.078
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.078
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.125
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:17.125
dvi: {DIF_INSTALLDEVICE} 15:56:17.125
dvi: No class installer for ‘System devices’
dvi: CoInstaller 1: Enter 15:56:17.125
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.125
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:17.187
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0xe0000203)} 15:56:17.187
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:17.187
dvi: CoInstaller 1: Enter 15:56:17.203
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.203
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.234
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:17.234
ump: Server install process exited with code 0xe0000203 15:56:17.250
ump: {Plug and Play Service: Device Install exit(e0000203)}
<<< Section end 2009/02/03 15:56:17.250
<<< [Exit status: FAILURE(0x00000308)]

>>> [Device Install (DiInstallDevice) - ROOT\UNKNOWN\0001]
>>> Section start 2009/02/03 15:56:17.250
cmd: “C:\Windows\system32\mmc.exe” “C:\Windows\system32\devmgmt.msc”
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:17.265
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:17.312
dvi: No class installer for ‘System devices’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:17.359
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.359
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.406
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:17.406
dvi: {DIF_INSTALLDEVICE} 15:56:17.406
dvi: No class installer for ‘System devices’
dvi: CoInstaller 1: Enter 15:56:17.406
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.421
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:17.468
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0xe0000203)} 15:56:17.468
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:17.468
dvi: CoInstaller 1: Enter 15:56:17.468
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.484
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.500
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:17.515
ump: Server install process exited with code 0xe0000203 15:56:17.515
ump: {Plug and Play Service: Device Install exit(e0000203)}
<<< Section end 2009/02/03 15:56:17.531
<<< [Exit status: FAILURE(0xe0000203)]


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Thank you for the suggestion, Doron. Yes, I’m installing this on a checked version of the OS. Hence, the only modification to the sample is the change to the .inf, specifying the checked version of wdfconstaller01007.dll.
Also, yes I am running while a kernel debugger is attached. In fact I use device manager to install and there’s an annoying COMDLG32 Assert (int 3) that is caused by one of the device manager’s combo boxes.

Ken

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Tuesday, February 03, 2009 11:23 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Dynambus.sys KMDF sample amd64 fails to install

Are you installing this on a chk OS? If not, you need to use the release version of the KMDF coinstaller, wdfcoinstaller01007.dll. the chk version of the coinstaller is for chk OS builds, not chk builds of your driver. Also, you will need to install while a kernel debugger is attached so that unsigned drivers will be allowed to load

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@jupiter.com
Sent: Tuesday, February 03, 2009 11:15 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Dynambus.sys KMDF sample amd64 fails to install

This question is on the subject of developing a virtual bus to enumerate devices of an ordinary class. The first step is to install a virtual dynamic bus enumerator, based on the toaster bus sample “dynambus” and, once this is working, cause the bus to enumerate the desired devices.

I’m having a problem with the installation of just the dynamic bus enumerator on Vista 64 (amd64). No other device drivers are being installed concurrently. I’ve tried building the toaster KMDF dynamic bus driver sample (unmodified) on both versions of WDK_6001 and get the same results.

The first triple-bang (!!!) error reported in setupapi.dev.log is:
!!! dvi: CoInstaller 2: failed(0x00000308)!
!!! dvi: Error 776: The client of a component requested an operation which is not valid given the state of the component instance.

Followed by:
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.

As I’m installing a system device class, it seems that no other class drivers should be necessary untill a device is discovered or enumerated by the bus.

The .inf has been modified to specify the checked version of the WDF coinstaller. I’ve tried this with and without signed .cat files.

Here is the entire setupapi.dev.log dump:


>> [Device Install (DiInstallDevice) - ROOT\UNKNOWN\0001]
>> Section start 2009/02/03 15:54:16.796
cmd: “C:\Windows\system32\mmc.exe” “C:\Windows\system32\devmgmt.msc”
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
inf: {SetupCopyOEMInf: c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf} 15:54:16.812
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
dvi: {Staging Package To Driver Store - phase 1}
sto: Inf Path = c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf
sto: Flags = 0
sto: Processor Architecture = 9
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
sto: Copying driver package. Inf = c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf, Destination = C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourceFilename - ‘dynambus.inf’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourcePath - ''
flq: SourceFilename - ‘dynambus.sys’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘c:\s3graphics\virtscreen_dbg_test\dynambus’
flq: SourcePath - ''
flq: SourceFilename - ‘wdfcoinstaller01007_chk.dll’
flq: TargetDirectory- ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
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=3
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - returned 0x00000001}
flq: source media:
flq: SourcePath - [c:\s3graphics\virtscreen_dbg_test\dynambus]
flq: SourceFile - [dynambus.inf]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC2C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC2C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned 0x00000000}
flq: {_commit_copyfile exit OK}
flq: source media:
flq: Description - [Toaster Dynamic Bus Installation Disk #1]
flq: SourcePath - [c:\s3graphics\virtscreen_dbg_test\dynambus]
flq: SourceFile - [dynambus.sys]
flq: Flags - 0x00000000
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.sys’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC4C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC4C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.sys’
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - returned 0x00000000}
flq: {_commit_copyfile exit OK}
flq: {_commit_copyfile}
flq: {SPFILENOTIFY_STARTCOPY}
flq: {SPFILENOTIFY_STARTCOPY - returned 0x00000001}
flq: CopyFile: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\wdfcoinstaller01007_chk.dll’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC7C.tmp’
flq: MoveFile: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\SETAC7C.tmp’
flq: to: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\wdfcoinstaller01007_chk.dll’
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\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
pol: {Driver package policy check} 15:54:17.093
pol: {Driver package policy check - exit(0x00000000)} 15:54:17.093
dvi: Staging Package To Driver Store - phase 2
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Users\Ken{a2f0fb82-b8f2-494c-87b2-f2262db23ac8}\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! sto: The Driver Package does not contain a catalog file, but user wants to install anyway.
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
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{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf
sto: Architecture = amd64
sto: PackageRoot = C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package
sto: Search Path = C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package;C:\Windows\INF
sto: Flags = 0
sto: Package Hash = 627EB2F48585BD43
sto: Signer Score = 0xff000000
sto: Digital Signer =
sto: Setting system restore point.
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! sto: Setting system restore point failed with = 0x43C
inf: Opened INF: ‘C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\dynambus.inf’ ([strings] )
! cmi: File::CopyFileUsingSymbolicLink(C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat, \?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\Km
! cmi: CopyFile from C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat to \?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat fa
! cmi: CopyFile(source=C:\Windows\system32\DriverStore\Temp{38f2925c-4654-4d39-af2a-643f0268ac5e}\Package\KmdfSamples.cat, destination=\?\C:\Windows\system32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSa
idb: Registered ‘dynambus.inf’ to driver store path ‘dynambus.inf_e1eaefee’
idb: Published ‘dynambus.inf_e1eaefee\dynambus.inf’ to ‘C:\Windows\INF\oem33.inf’
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\dynambus.inf_e1eaefee\dynambus.inf
inf: Published Inf Path: C:\Windows\INF\oem33.inf
inf: Opened INF: ‘c:\s3graphics\virtscreen_dbg_test\dynambus\dynambus.inf’ ([strings] )
inf: Installing Catalog c:\s3graphics\virtscreen_dbg_test\dynambus\KmdfSamples.cat as: oem33.CAT
! inf: Failed to Catalog - error ignored
! inf: Error 2: The system cannot find the file specified.
inf: OEM source media location: c:\s3graphics\virtscreen_dbg_test\dynambus<br> inf: {SetupCopyOEMInf exit (0x00000000)} 15:56:14.796
inf: Opened INF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.812
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific (valid) catalog failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:56:14.812
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.812
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific Authenticode™ catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:56:14.828
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:14.828
ndv: Infpath=C:\Windows\INF\oem33.inf
ndv: DriverNodeName=dynambus.inf:Standard.NTAMD64:ToasterDynamicBus_Device:6.0.6001.18000:root\dynambus
ndv: DriverStorepath=C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
ndv: Building driver list from driver node strong name…
inf: Opened INF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: Saved PNF: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.PNF’ (Language = 0409)
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.906
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific (valid) catalog failed! (0x00000057)
! sig: Error 87: The parameter is incorrect.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000057)} 15:56:14.937
sig: {_VERIFY_FILE_SIGNATURE} 15:56:14.937
sig: Key = dynambus.inf
sig: FilePath = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.inf
sig: Catalog = C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\KmdfSamples.cat
! sig: Verifying file against specific Authenticode™ catalog failed! (0x80092003)
! sig: Error 0x80092003: An error occurred while reading or writing to a file.
sig: {_VERIFY_FILE_SIGNATURE exit(0x80092003)} 15:56:14.953
dvi: Selected driver installs from section [ToasterDynamicBus_Device] in ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’.
dvi: Class GUID of device changed to: {4d36e97d-e325-11ce-bfc1-08002be10318}.
dvi: Set selected driver complete.
ndv: {Core Device Install}
inf: Opened INF: ‘C:\Windows\INF\oem33.inf’ ([strings] )
inf: Saved PNF: ‘C:\Windows\INF\oem33.PNF’ (Language = 0409)
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:14.968
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: CoInstaller 1: Enter 15:56:14.984
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:14.984
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:15.000
ndv: Installing files…
dvi: {DIF_INSTALLDEVICEFILES} 15:56:15.000
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.000
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.000
dvi: {Install FILES}
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: {Install Inf Section [ToasterDynamicBus_Device.NT]}
inf: CopyFiles=Drivers_Dir (dynambus.inf line 53)
cpy: Open PnpLockdownPolicy: Err=2. This is OK. Use LockDownPolicyDefault
flq: QueueSingleCopy…
flq: Inf : ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceInf: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on SourceInf
flq: SourceRootPath: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: SourceFilename - ‘dynambus.sys’
flq: TargetDirectory- ‘C:\Windows\system32\DRIVERS’
flq: TargetFilename - ‘dynambus.sys’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: {Install Inf Section [ToasterDynamicBus_Device.NT] exit (0x00000000)}
dvi: Processing co-installer registration section [ToasterDynamicBus_Device.NT.CoInstallers].
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers]}
inf: CopyFiles=ToasterDynamicBus_Device_CoInstaller_CopyFiles (dynambus.inf line 88)
flq: QueueSingleCopy…
flq: Inf : ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceInf: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’
flq: SourceSection: [sourcedisksfiles]
flq: Source root path based on SourceInf
flq: SourceRootPath: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: {FILE_QUEUE_COPY}
flq: CopyStyle - 0x00000000
flq: SourceRootPath - ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee’
flq: SourceFilename - ‘WdfCoInstaller01007_chk.dll’
flq: TargetDirectory- ‘C:\Windows\system32’
flq: TargetFilename - ‘WdfCoInstaller01007_chk.dll’
flq: SourceDesc - ‘Toaster Dynamic Bus Installation Disk #1
flq: {FILE_QUEUE_COPY exit(0x00000000)}
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers] exit (0x00000000)}
dvi: Co-installers registered.
dvi: {Install INTERFACES}
dvi: Installing section [ToasterDynamicBus_Device.NT.Interfaces]
dvi: {Install INTERFACES exit 00000000}
dvi: {Install FILES exit (0x00000000)}
dvi: Default installer: Exit
dvi: {DIF_INSTALLDEVICEFILES - exit(0x00000000)} 15:56:15.062
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=2
flq: File ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’ pruned from copy.
sig: Using catalog ‘C:\Windows\system32\CatRoot{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\oem30.CAT’.
flq: {SPFILENOTIFY_CABINETINFO}
flq: {SPFILENOTIFY_CABINETINFO - exit(0x00000000)}
flq: {SPFILENOTIFY_FILEEXTRACTED}
flq: {SPFILENOTIFY_FILEEXTRACTED - exit(0x00000000)}
flq: {SPFILENOTIFY_CABINETINFO}
flq: {SPFILENOTIFY_CABINETINFO - exit(0x00000000)}
flq: {SPFILENOTIFY_FILEEXTRACTED}
flq: {SPFILENOTIFY_FILEEXTRACTED - exit(0x00000000)}
! sig: VerifyTrustFailed for C:\Windows\system32\WdfCoInstaller01007_chk.dll.
! 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\WdfCoInstaller01007_chk.dll’ Status=0 Class=OEM Legacy
flq: ScanQ action=200 DoPruning=32
flq: ScanQ end Validity flags=620 CopyNodes=1
dvi: {_SCAN_FILE_QUEUE exit(0, 0x00000000)}
ndv: Committing file queue…
flq: {_COMMIT_FILE_QUEUE}
flq: CommitQ DelNodes=0 RenNodes=0 BackNodes=0 CopyNodes=1
flq: {SPFILENOTIFY_STARTQUEUE}
flq: {SPFILENOTIFY_STARTQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_STARTSUBQUEUE}
flq: {SPFILENOTIFY_STARTSUBQUEUE - exit(0x00000001)}
flq: SPFILENOTIFY_NEEDMEDIA:
flq: Description - [Toaster Dynamic Bus Installation Disk #1]
flq: SourcePath - [C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee]
flq: SourceFile - [dynambus.sys]
flq: Flags - 0x00000000
flq: {SPFILENOTIFY_NEEDMEDIA}
flq: {SPFILENOTIFY_NEEDMEDIA - exit(0x00000001)}
cpy: CopyFile: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: to: ‘C:\Windows\Temp\OLD7AF1.tmp’
flq: {SPFILENOTIFY_STARTCOPY}
ndv: Saving LastKnownGood file C:\Windows\system32\DRIVERS\dynambus.sys (copy)
cpy: CopyFile: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: to: ‘C:\Windows\LastGood\TMP7B01.tmp’
flq: {SPFILENOTIFY_STARTCOPY - exit(0x00000001)}
cpy: CopyFile: ‘C:\Windows\System32\DriverStore\FileRepository\dynambus.inf_e1eaefee\dynambus.sys’
cpy: to: ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’
cpy: CopyFile Drp is active
cpy: Source File ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’ is NOT signed NT5 Crypto.
cpy: DrpGetFileProt Status=0 dwClass=5
cpy: MoveFile: ‘C:\Windows\system32\DRIVERS\SET7B12.tmp’
cpy: to: ‘C:\Windows\system32\DRIVERS\dynambus.sys’
cpy: DrpSetRegFileProt ‘C:\Windows\system32\DRIVERS\dynambus.sys’ Status=0 Class=OEM Legacy
flq: {SPFILENOTIFY_ENDCOPY}
flq: {SPFILENOTIFY_ENDCOPY - exit(0x00000001)}
flq: {SPFILENOTIFY_ENDSUBQUEUE}
flq: {SPFILENOTIFY_ENDSUBQUEUE - exit(0x00000001)}
flq: {SPFILENOTIFY_ENDQUEUE}
flq: {SPFILENOTIFY_ENDQUEUE - exit(0x00000001)}
flq: {_COMMIT_FILE_QUEUE exit(0x00000000)}
ndv: Registering CoInstallers…
dvi: {DIF_REGISTER_COINSTALLERS} 15:56:15.484
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.500
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.500
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers]}
inf: AddReg=ToasterDynamicBus_Device_CoInstaller_AddReg (dynambus.inf line 87)
inf: HKR,CoInstallers32,0x00010000,WdfCoInstaller01007_chk.dll,WdfCoInstaller (dynambus.inf line 91)
inf: {Install Inf Section [ToasterDynamicBus_Device.NT.CoInstallers] exit (0x00000000)}
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:15.515
dvi: CoInstaller 1: Enter 15:56:15.515
dvi: CoInstaller 1: Exit
dvi: Default installer: Enter 15:56:15.515
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:15.531
dvi: Co-installers registered.
dvi: Default installer: Exit
dvi: {DIF_REGISTER_COINSTALLERS - exit(0x00000000)} 15:56:15.531
ndv: Installing interfaces…
dvi: {DIF_INSTALLINTERFACES} 15:56:15.531
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:15.546
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:15.546
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:15.593
dvi: {Install INTERFACES}
inf: Opened PNF: ‘c:\windows\system32\driverstore\filerepository\dynambus.inf_e1eaefee\dynambus.inf’ ([strings] )
dvi: Installing section [ToasterDynamicBus_Device.NT.Interfaces]
dvi: {Install INTERFACES exit 00000000}
dvi: Default installer: Exit
dvi: {DIF_INSTALLINTERFACES - exit(0x00000000)} 15:56:15.609
ndv: Installing device…
dvi: {DIF_INSTALLDEVICE} 15:56:15.609
dvi: No class installer for ‘Toaster Dynamic Bus Enumerator’
dvi: CoInstaller 1: Enter 15:56:15.609
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:15.609
inf: Opened PNF: ‘C:\Windows\INF\oem33.inf’ ([strings] )
!!! dvi: CoInstaller 2: failed(0x00000308)!
!!! dvi: Error 776: The client of a component requested an operation which is not valid given the state of the component instance.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:16.609
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0x00000308)} 15:56:16.609
!!! ndv: Error(00000308) installing device!
ndv: Device install status=0x00000308
ndv: Performing device install final cleanup…
! ndv: Queueing up error report since device installation failed…
ndv: {Core Device Install - exit(0x00000308)}
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:16.625
dvi: CoInstaller 1: Enter 15:56:16.625
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:16.625
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:16.671
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:16.671
ump: Server install process exited with code 0x00000308 15:56:16.687
ump: {Plug and Play Service: Device Install exit(00000308)}
ndv: Device Install failed for new device…installing NULL driver.
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:17.000
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:17.046
dvi: No class installer for ‘System devices’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:17.078
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.078
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.125
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:17.125
dvi: {DIF_INSTALLDEVICE} 15:56:17.125
dvi: No class installer for ‘System devices’
dvi: CoInstaller 1: Enter 15:56:17.125
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.125
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:17.187
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0xe0000203)} 15:56:17.187
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:17.187
dvi: CoInstaller 1: Enter 15:56:17.203
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.203
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.234
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:17.234
ump: Server install process exited with code 0xe0000203 15:56:17.250
ump: {Plug and Play Service: Device Install exit(e0000203)}
<<< Section end 2009/02/03 15:56:17.250
<<< [Exit status: FAILURE(0x00000308)]

>>> [Device Install (DiInstallDevice) - ROOT\UNKNOWN\0001]
>>> Section start 2009/02/03 15:56:17.250
cmd: “C:\Windows\system32\mmc.exe” “C:\Windows\system32\devmgmt.msc”
dvi: {Plug and Play Service: Device Install for ROOT\UNKNOWN\0001}
ump: Creating Install Process: DrvInst.exe 15:56:17.265
! ndv: Installing NULL driver!
dvi: Set selected driver complete.
pol: Device installation is subject to policy
dvi: {DIF_ALLOW_INSTALL} 15:56:17.312
dvi: No class installer for ‘System devices’
dvi: Using exported function ‘CriticalDeviceCoInstaller’ in module ‘C:\Windows\system32\SysClass.Dll’.
dvi: CoInstaller 1 == SysClass.Dll,CriticalDeviceCoInstaller
dvi: Using exported function ‘WdfCoInstaller’ in module ‘C:\Windows\system32\WdfCoInstaller01007_chk.dll’.
dvi: CoInstaller 2 == WdfCoInstaller01007_chk.dll,WdfCoInstaller
dvi: CoInstaller 1: Enter 15:56:17.359
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.359
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.406
dvi: Default installer: Exit
dvi: {DIF_ALLOW_INSTALL - exit(0xe000020e)} 15:56:17.406
dvi: {DIF_INSTALLDEVICE} 15:56:17.406
dvi: No class installer for ‘System devices’
dvi: CoInstaller 1: Enter 15:56:17.406
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.421
!!! dvi: CoInstaller 2: failed(0xe0000203)!
!!! dvi: Error 0xe0000203: There is no driver selected for the device information set or element.
dvi: CoInstaller 1: Enter (Post Processing) 15:56:17.468
dvi: CoInstaller 1: Exit (Post Processing)
dvi: {DIF_INSTALLDEVICE - exit(0xe0000203)} 15:56:17.468
dvi: {DIF_DESTROYPRIVATEDATA} 15:56:17.468
dvi: CoInstaller 1: Enter 15:56:17.468
dvi: CoInstaller 1: Exit
dvi: CoInstaller 2: Enter 15:56:17.484
dvi: CoInstaller 2: Exit
dvi: Default installer: Enter 15:56:17.500
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 15:56:17.515
ump: Server install process exited with code 0xe0000203 15:56:17.515
ump: {Plug and Play Service: Device Install exit(e0000203)}
<<< Section end 2009/02/03 15:56:17.531
<<< [Exit status: FAILURE(0xe0000203)]


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

The checked WDF coinstallers are not capable of updating Windows Vista- this is the reason most of them are smaller than the corresponding free coinstallers [they have no updates for Vista embedded in them].

The only workable approach is to replace the files manually- disassemble the checked coinstaller and run the unpacking step of the legacy update to get the checked files for KMDF, then override the SFP and copy them over the existing ones, and reboot. After that the coinstaller won’t attempt an update, and the installs will work.

This link includes a description of the disassembly process [a bit flippantly, but that’s my blogging style]- it’s near the end of the article:

http://blogs.msdn.com/bobkjelgaard/archive/2007/12/13/kmdf-1-7-and-the-server-2008-vista-sp1-rc1-wdk.aspx

To override SFP, take ownership of the files [wdf01000.sys and wdfldr.sys], give yourself full control, rename or copy the old ones [assuming you want to keep them], and then drop the new ones extracted from your coinstaller.

Thank you for the quick response, Bob (AKA The 1 True Papa). The workaround your recommended worked well and I can now proceed.

Best regards to you and the WDF team.

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Bob Kjelgaard
Sent: Wednesday, February 04, 2009 6:09 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Dynambus.sys KMDF sample amd64 fails to install

The checked WDF coinstallers are not capable of updating Windows Vista- this is the reason most of them are smaller than the corresponding free coinstallers [they have no updates for Vista embedded in them].

The only workable approach is to replace the files manually- disassemble the checked coinstaller and run the unpacking step of the legacy update to get the checked files for KMDF, then override the SFP and copy them over the existing ones, and reboot. After that the coinstaller won’t attempt an update, and the installs will work.

This link includes a description of the disassembly process [a bit flippantly, but that’s my blogging style]- it’s near the end of the article:

http://blogs.msdn.com/bobkjelgaard/archive/2007/12/13/kmdf-1-7-and-the-server-2008-vista-sp1-rc1-wdk.aspx

To override SFP, take ownership of the files [wdf01000.sys and wdfldr.sys], give yourself full control, rename or copy the old ones [assuming you want to keep them], and then drop the new ones extracted from your coinstaller.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer