On Thursday 19 February 2009 16:55:20 emiliano esposito wrote:
Unhandled exception: unimplemented function usbd.sys.USBD_GetUSBDIVersion called in 32-bit code (0x7ee2e923)
You can try attached patch
From b7fad82130608126244ba2aee3f91b3337229fb3 Mon Sep 17 00:00:00 2001 From: Alexander Morozov amorozov@etersoft.ru Date: Fri, 20 Feb 2009 12:14:33 +0300 Subject: [PATCH 3/3] usbd.sys: Implement USBD_GetUSBDIVersion.
--- dlls/usbd.sys/usbd.c | 7 +++++++ dlls/usbd.sys/usbd.sys.spec | 2 +- include/ddk/usb.h | 6 ++++++ 3 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/dlls/usbd.sys/usbd.c b/dlls/usbd.sys/usbd.c index 8c2a8f9..c7c8fab 100644 --- a/dlls/usbd.sys/usbd.c +++ b/dlls/usbd.sys/usbd.c @@ -132,6 +132,13 @@ PURB WINAPI USBD_CreateConfigurationRequest( return urb; }
+void WINAPI USBD_GetUSBDIVersion( PUSBD_VERSION_INFORMATION VersionInformation ) +{ + TRACE( "%p\n", VersionInformation ); + VersionInformation->USBDI_Version = 0x300; + VersionInformation->Supported_USB_Version = 0x100; +} + NTSTATUS WINAPI DriverEntry( DRIVER_OBJECT *driver, UNICODE_STRING *path ) { return STATUS_SUCCESS; diff --git a/dlls/usbd.sys/usbd.sys.spec b/dlls/usbd.sys/usbd.sys.spec index 5d0377c..a18bbf8 100644 --- a/dlls/usbd.sys/usbd.sys.spec +++ b/dlls/usbd.sys/usbd.sys.spec @@ -19,7 +19,7 @@ @ stub USBD_GetInterfaceLength @ stub USBD_GetPdoRegistryParameter @ stub USBD_GetSuspendPowerState -@ stub USBD_GetUSBDIVersion +@ stdcall USBD_GetUSBDIVersion(ptr) @ stub USBD_InitializeDevice @ stub USBD_MakePdoName @ stub USBD_ParseConfigurationDescriptor diff --git a/include/ddk/usb.h b/include/ddk/usb.h index b8f5f3f..a5db726 100644 --- a/include/ddk/usb.h +++ b/include/ddk/usb.h @@ -82,6 +82,12 @@ typedef PVOID USBD_PIPE_HANDLE; typedef PVOID USBD_CONFIGURATION_HANDLE; typedef PVOID USBD_INTERFACE_HANDLE;
+typedef struct _USBD_VERSION_INFORMATION { + ULONG USBDI_Version; + ULONG Supported_USB_Version; +} USBD_VERSION_INFORMATION; +typedef struct _USBD_VERSION_INFORMATION *PUSBD_VERSION_INFORMATION; + typedef enum _USBD_PIPE_TYPE { UsbdPipeTypeControl, UsbdPipeTypeIsochronous,