static int wince_reset_device( struct libusb_device_handle *handle) { struct wince_device_priv *priv = _device_priv(handle->dev); if (!UkwResetDevice(priv->dev)) { return translate_driver_error(GetLastError()); } return LIBUSB_SUCCESS; }
static void resetDevice(char line[]) { // Parse the device index DWORD devIdx = 0; line = parseNumber(line, devIdx); if (!line) { printf("Please provide a decimal device number following the command\n"); return; } if (devIdx >= gDeviceListSize || devIdx < 0) { printf("Invalid device index '%d' provided\n", devIdx); return; } UKW_DEVICE device = gDeviceList[devIdx]; BOOL result = UkwResetDevice(device); if (!result) { printf("Failed to reset device '%d': %d\n", devIdx, GetLastError()); } else { printf("Device '%d' reset\n", devIdx); } }