* Sync up to trunk head (r65095).
[reactos.git] / drivers / usb / usbd / test.c
1 #include <stdio.h>
2 #include <windows.h>
3 #include <usbdi.h>
4
5 typedef ULONG NTAPI
6 (*USBD_GetInterfaceLengthTYPE)(
7 PUSB_INTERFACE_DESCRIPTOR InterfaceDescriptor,
8 PUCHAR BufferEnd
9 );
10
11 int main()
12 {
13 HMODULE Lib;
14 USB_INTERFACE_DESCRIPTOR InterfaceDescriptor;
15 USBD_GetInterfaceLengthTYPE USBD_GetInterfaceLength;
16
17 InterfaceDescriptor.bLength = 10;
18 InterfaceDescriptor.bNumEndpoints = 2;
19 InterfaceDescriptor.bDescriptorType = /*USB_INTERFACE_DESCRIPTOR_TYPE*/2;
20 InterfaceDescriptor.iInterface = 0x1;
21
22 Lib = LoadLibraryEx("usbd.sys", NULL, DONT_RESOLVE_DLL_REFERENCES);
23 USBD_GetInterfaceLength = (USBD_GetInterfaceLengthTYPE)GetProcAddress(Lib, "USBD_GetInterfaceLength");
24 printf("%X\n", USBD_GetInterfaceLength(&InterfaceDescriptor, (PUCHAR)((DWORD)&InterfaceDescriptor + sizeof(InterfaceDescriptor))));
25 FreeLibrary(Lib);
26
27 Lib = LoadLibraryEx("usbd.ms", NULL, DONT_RESOLVE_DLL_REFERENCES);
28 USBD_GetInterfaceLength = (USBD_GetInterfaceLengthTYPE)GetProcAddress(Lib, "USBD_GetInterfaceLength");
29 printf("%X\n", USBD_GetInterfaceLength(&InterfaceDescriptor, (PUCHAR)((DWORD)&InterfaceDescriptor + sizeof(InterfaceDescriptor))));
30 FreeLibrary(Lib);
31 return 0;
32 }
33