#include "examples.h"
KUSB_DRIVER_API Usb;
DWORD __cdecl main(int argc, char* argv[])
{
KLST_HANDLE deviceList = NULL;
KLST_DEVINFO_HANDLE deviceInfo = NULL;
KUSB_HANDLE handle = NULL;
DWORD errorCode = ERROR_SUCCESS;
if (!Examples_GetTestDevice(&deviceList, &deviceInfo, argc, argv))
return GetLastError();
if (!LibK_LoadDriverAPI(&Usb, deviceInfo->DriverID))
{
errorCode = GetLastError();
printf("LibK_LoadDriverAPI failed. ErrorCode: %08Xh\n", errorCode);
goto Done;
}
switch(deviceInfo->DriverID)
{
case KUSB_DRVID_LIBUSBK:
printf("libusbK driver api loaded!\n");
break;
case KUSB_DRVID_LIBUSB0:
printf("libusb0 driver api loaded!\n");
break;
case KUSB_DRVID_WINUSB:
printf("WinUSB driver api loaded!\n");
break;
case KUSB_DRVID_LIBUSB0_FILTER:
printf("libusb0/filter driver api loaded!\n");
break;
}
if (!Usb.Init(&handle, deviceInfo))
{
errorCode = GetLastError();
printf("Usb.Init failed. ErrorCode: %08Xh\n", errorCode);
goto Done;
}
printf("Device opened successfully!\n");
Done:
UsbK_Free(handle);
LstK_Free(deviceList);
return errorCode;
}