Hallo Community,

Man kann ja zb. mit dem WinDDK Sample USBView die Device Descriptor, Configuration Descriptor, Interface Descriptor, Endpoint Descriptor eines Usb-Gerätes/ Usb-Treiber auslesen.
Gibt es nicht eine einfache möglichkeit mit dem USB-Treiber zu kommunizieren (Interrupt-Transfer / Bulk-Transfer) ohne einen WinUsb Treiber oder anderen Treiber installieren zu müssen?


Ich brauche auf jedenfall die Interrupt-Transfer / Bulk-Transfer Daten direkt Treiber.
Vieleicht gibt es ja noch ein paar API#s die ich nicht kenne. Hab schon eine ganze Zeit damit verbracht mich im Internet schlau zu machen.

Habe es mit den HID Parser Funktionen versucht. Bin leider nicht zu dem ergebniss gekommen das ich brauche.

Die HID Parser Funktionen haben zwar alle funktioniert aber ich habe im WinDDK gelesen das mein XUSB gerät - XBox360 Wirelss Game Pad / XBox360 Game Pad entweder über XInput oder beziehungsweise mit dem Treiber kommuniziert.

Das bedeutet ja eigendlich das XInput auch direkt mit dem Treiber ohne WinUSB kommunizieren kann. Jetzt versuche ich einen eleganten weg zu finden ohne noch andrere Treiber installieren zu müssen um mit dem Treiber des Gerätes daten austauschen zu können.

Kann mir jemand weiterhelfen ???

ich kopiere mal die treiber Inf mit rein. Vieleicht kann man da irgendetwas erkennen.
Vieleicht geht ja irgendwas über den service

Code:
; Copyright 2006-2007 Microsoft Corporation
;
; XUSB21.INF file
;
; Installs the XUSB21 device driver
;
; Supports the following devices
; Wired Common Controller    USB\Vid_045E&Pid_028E
; Wireless Common Controller USB\Vid_045E&Pid_0719
; Wired CC Compatible        USB\MS_COMP_XUSB10
; Wireless CC Compatible     USB\MS_COMP_XUSB20
;
; Installs a NULL Service for the Play and Charge Cable
; Play and Charge Cable      USB\Vid_045E&Pid_028F
;
; Uses Version 1.9 of the WDF Coninstaller
;

[Version]
Signature="$WINDOWS NT$"
Class=XnaComposite
ClassGUID={D61CA365-5AF4-4486-998B-9DB4734C6CA3}
Provider=%MSFT%
CatalogFile=xusb21.cat
DriverVer=08/13/2009,2.1.0.1349

[ClassInstall32]
AddReg=XnaComposite_AddReg

[XnaComposite_AddReg]
HKR,,,,%XUSB21.ClassName%
HKR,,Icon,,-24


; Add source disk stuff to allow chkinf to work properly
[SourceDisksNames]
1=%XUSB21.DiskName%

; Add source disk stuff to allow chkinf to work properly
[SourceDisksFiles.x86]
xusb21.sys=1,x86
WdfCoInstaller01009.dll=1,x86


[SourceDisksFiles.amd64]
xusb21.sys=1,x64
WdfCoInstaller01009.dll=1,x64

[ControlFlags]
ExcludeFromSelect=*

[DestinationDirs]
DefaultDestDir=12
CC_Install_CoInstaller_CopyFiles=11

[Manufacturer]
%MSFT%=MSFT,NTx86,NTamd64,NTx86.6.0,NTamd64.6.0

[MSFT.NTx86.6.0]
%XUSB21.DeviceName.Wired%=CC_Install, USB\Vid_045E&Pid_028E
%XUSB21.DeviceName%=CC_Install, USB\Vid_045E&Pid_0719
%XUSB21.DeviceName.Wired%=CC_Install, USB\MS_COMP_XUSB10
%XUSB21.DeviceName%=CC_Install, USB\MS_COMP_XUSB20
%XUSB21.DeviceName.Jump%=CC_Install, USB\Vid_045E&Pid_028F

[MSFT.NTamd64.6.0]
%XUSB21.DeviceName.Wired%=CC_Install, USB\Vid_045E&Pid_028E
%XUSB21.DeviceName%=CC_Install, USB\Vid_045E&Pid_0719
%XUSB21.DeviceName.Wired%=CC_Install, USB\MS_COMP_XUSB10
%XUSB21.DeviceName%=CC_Install, USB\MS_COMP_XUSB20
%XUSB21.DeviceName.Jump%=CC_Install, USB\Vid_045E&Pid_028F

[MSFT.NTx86]
%XUSB21.DeviceName.Wired%=CC_Install, USB\Vid_045E&Pid_028E
%XUSB21.DeviceName%=CC_Install, USB\Vid_045E&Pid_0719
%XUSB21.DeviceName.Wired%=CC_Install, USB\MS_COMP_XUSB10
%XUSB21.DeviceName%=CC_Install, USB\MS_COMP_XUSB20
%XUSB21.DeviceName.Jump%=CC_Install, USB\Vid_045E&Pid_028F

[MSFT.NTamd64]
%XUSB21.DeviceName.Wired%=CC_Install, USB\Vid_045E&Pid_028E
%XUSB21.DeviceName%=CC_Install, USB\Vid_045E&Pid_0719
%XUSB21.DeviceName.Wired%=CC_Install, USB\MS_COMP_XUSB10
%XUSB21.DeviceName%=CC_Install, USB\MS_COMP_XUSB20
%XUSB21.DeviceName.Jump%=CC_Install, USB\Vid_045E&Pid_028F

[CC_Install]
CopyFiles=CC_Install.CopyFiles
AddReg=CC_Install.AddReg

[CC_Install.CopyFiles]
xusb21.sys

[CC_Install.AddReg]
 HKR,,"AudioOutTerminalType"        , 0x00010001, 0x00000306
;HKR,,"LiveCallButtonVidPid"        , 0x045e0001, 0x00000306
;HKR,,"WheelUsage"                  , 0x00000004, 0x00000306
;HKR,,"SwapFFWirelessWheelVibration", 0x00000001, 0x00000306

[CC_Install.Services]
AddService=xusb21,0x00000002,CC_XUSB21_Service

[CC_Install.CoInstallers]
AddReg=CC_Install_CoInstaller_AddReg
CopyFiles=CC_Install_CoInstaller_CopyFiles

[CC_Install_CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000, "WdfCoInstaller01009.dll,WdfCoInstaller"

[CC_Install_CoInstaller_CopyFiles]
WdfCoInstaller01009.dll

[CC_Install.Wdf]
KmdfService = XUSB21, XUSB21_wdfsect

[XUSB21_wdfsect]
KmdfLibraryVersion = 1.9


[CC_XUSB21_Service]
DisplayName    = %XUSB21.ServiceName%
ServiceType    = 1 ; SERVICE_KERNEL_DRIVER
StartType      = 3 ; SERVICE_DEMAND_START
ErrorControl   = 0 ; SERVICE_ERROR_IGNORE
ServiceBinary  = %12%\xusb21.sys


[strings]
;localized strings
MSFT                            = "Microsoft"
StdMfg                          = "(Standard system devices)"
XUSB21.ClassName                 = "XBOX 360 Peripherals"
XUSB21.DeviceName                = "Xbox 360 Wireless Receiver for Windows"
XUSB21.DeviceName.Wired          = "Xbox 360 Controller for Windows"
XUSB21.DeviceName.Jump      	 = "Xbox 360 Wireless Controller via Play & Charge Kit"
XUSB21.ServiceName               = "Xbox 360 Wireless Receiver Driver Service 21"
XUSB21.DiskName                  = "Xbox 360 Wireless Receiver for Windows Install Disk"