1

一般的な USB デバイスを使用して割り込みエンドポイントを介して基本的な読み取りを行う WinUSB アプリケーションを開発しています。デバイスドライバーは正常にインストールされました。ただし、デバイスが接続されたときに、アプリケーションの t_main 関数はまったくトリガーされません。Visual Studio デバッガーでのみトリガーされ、正常に動作します。

ここで何が欠けていますか?Winusbtrace はデバイスを検出し、WinUSB_InitControlPipe と WinUSB_DOEntry のエントリと終了をログに記録します。Windows/inf/*.log のログはインストールのみを記録するため、役に立ちません。参照できる他のログはありますか?

ご意見をお寄せいただければ幸いです。前もって感謝します。以下は私のINFファイルで、Win 7 x64でVisual Studio 2013を使用しています

;
; Test.inf
;
; Installs WinUsb
;

[Version]
Signature = "$Windows NT$"
Class     = USBDevice
ClassGUID = {88BAE032-5A81-49f0-BC3D-A4FF138216D6}
Provider = %ManufacturerName%
CatalogFile=Test.cat

; ========== Manufacturer/Models sections ===========

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

[Standard.NT$ARCH$]
%DeviceName% =USB_Install, USB\VID_0457&PID_0500

; ========== Class definition ===========

[ClassInstall32]
AddReg = ClassInstall_AddReg

[ClassInstall_AddReg]
HKR,,,,%ClassName%
HKR,,NoInstallClass,,1
HKR,,IconPath,%REG_MULTI_SZ%,"%systemroot%\system32\setupapi.dll,-20"
HKR,,LowerLogoVersion,,5.2

; =================== Installation ===================

[USB_Install]
Include=winusb.inf
Needs=WINUSB.NT

[USB_Install.Services]
Include=winusb.inf
AddService=WinUsb,0x00000002,WinUsb_ServiceInstall

[WinUsb_ServiceInstall]
DisplayName     = %WinUsb_SvcDesc%
ServiceType     = 1
StartType       = 3
ErrorControl    = 1
ServiceBinary   = %12%\WinUSB.sys

[USB_Install.HW]
AddReg=Dev_AddReg

[Dev_AddReg]
; By default, USBDevice class uses iProduct descriptor to name the device in
; Device Manager on Windows 8 and higher.
; Uncomment for this device to use %DeviceName% on Windows 8 and higher:
;HKR,,FriendlyName,,%DeviceName%
HKR,,DeviceInterfaceGUIDs,0x10000,"{2753294b-5128-4a42-be6a-d7818234ea9c}"

[USB_Install.Wdf]
KmdfService=WINUSB, WinUsb_Install

[WinUsb_Install]
KmdfLibraryVersion=1.9

[USB_Install.CoInstallers]
AddReg=CoInstallers_AddReg
CopyFiles=CoInstallers_CopyFiles

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller$KMDFCOINSTALLERVERSION$.dll,WdfCoInstaller"

[CoInstallers_CopyFiles]
WdfCoInstaller$KMDFCOINSTALLERVERSION$.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

; ================= Source Media Section =====================

[SourceDisksNames]
1 = %DiskName%

[SourceDisksFiles]
WdfCoInstaller$KMDFCOINSTALLERVERSION$.dll=1

; =================== Strings ===================

[Strings]
ManufacturerName="Test"
ClassName="Universal Serial Bus devices"
DiskName="Device Installation Disk"
WinUsb_SvcDesc="WinUSB Driver"
DeviceName="Test Device"
REG_MULTI_SZ = 0x00010000
4

1 に答える 1