KMDF 1.5 を実行している 32 ビット Vista マシンに KMDF 1.9 ドライバーをインストールする際に問題が発生しています。共同インストーラーが Vista マシンを KMDF 1.9 に更新することを期待していました。しかし、そうではありません。
私は何を逃したのですか?
[Version]
Signature = "$WINDOWS NT$"
Class = MYDevice
ClassGuid = {xxxxxxxx-yyyy-zzzz-cccc-dddddddddddd}
Provider = %MyCompany%
DriverVer = 03/04/2013,1.0.0.0
CatalogFile = mydevice.cat
; =================== Class section ===================
[ClassInstall32]
Addreg = MydeviceClassReg
[MydeviceClassReg]
HKR,,,0,%ClassName%
HKR,,Icon,,-5
[DestinationDirs]
DefaultDestDir = 12
; ================== Device section ===================
[Manufacturer]
%MyCompany% = MyCompany,NTx86,NTamd64
[MyCompany.NTx86]
%DeviceDesc% = mydevice, USB\VID_xxxx&PID_yyyy&REV_zzzz&MI_aa
[MyCompany.NTamd64]
%DeviceDesc% = mydevice, USB\VID_xxxx&PID_yyyy&REV_zzzz&MI_aa
[mydevice]
CopyFiles = mydevice.Files
[mydevice.Files]
mydevice.sys
[SourceDisksNames.x86]
1 = %Disk_Description%,,,\x86
[SourceDisksNames.amd64]
1 = %Disk_Description%,,,\amd64
[SourceDisksFiles]
mydevice.sys = 1,,
[mydevice.Services]
Addservice = mydevice, 0x00000002, mydevice.AddService
[mydevice.AddService]
DisplayName = %ClassName%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\mydevice.sys
; =========== WDF Coinstaller installation =============
[DestinationDirs]
CoInstallers_CopyFiles = 11
[mydevice.Dev.NT.Coninstallers]
Addreg = Coinstaller_Addreg
CopyFiles = CoInstallers_CopyFiles
[CoInstallers_CopyFiles]
winusbcoinstaller2.dll
WdfCoInstaller01009.dll
[SourceDisksFiles.NTx86]
winusbcoinstaller2.dll = 1
WdfCoInstaller01009.dll = 1
[SourceDisksFiles.NTamd64]
winusbcoinstaller2.dll = 2
WdfCoInstaller01009.dll = 2
[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"winusbcoinstaller2.dll","WdfCoInstaller01009.dll"
[mydevice.Wdf]
KmdfService = mydevice, mydevice_wdfsect
[mydevice_wdfsect]
KmdfLibraryVersion = 1.9
; ======================= Strings ======================
[Strings]
MyCompany = "MyCompany"
Disk_Description = "My Device Installation Disk"
ClassName = "MYDEV"
DeviceDesc = "My Device"
setupapi.dev.log には次のように記載されています。
!!! dvi: Device not started: Device has problem: 0x27: CM_PROB_DRIVER_FAILED_LOAD.
KMDF 1.9 を既に取得している Win7 では、すべて正常に動作します。