Red de conocimiento informático - Problemas con los teléfonos móviles - Cuando se utiliza CreateFile para desarrollar dispositivos USB HID, no se puede obtener el identificador del dispositivo. ¿Cómo solucionar el problema?

Cuando se utiliza CreateFile para desarrollar dispositivos USB HID, no se puede obtener el identificador del dispositivo. ¿Cómo solucionar el problema?

MANEJAR connectToIthUSBHIDDevice (DWORD deviceIndex)

{

// GUID hidGUID;

HDEVINFO hardwareDeviceInfoSet;

SP_DEVICE_INTERFACE_DATA dispositivoInterfaceData;

PSP_INTERFACE_DEVICE_DETAIL_DATA dispositivoDetalle;

ULONG requeridoTamaño;

HANDLE dispositivoHandle = INVALID_HANDLE_VALUE;

Resultado DWORD;

//Obtener el valor GUID HID - usado como máscara para obtener la lista de dispositivos //Obtener GUID

HidD_GetHidGuid (amp; hidGUID);

//Obtener una lista de dispositivos que coincide con los criterios (interfaz oculta, presente)

hardwareDeviceInfoSet = SetupDiGetClassDevs (amp;hidGUID,

NULL, // No define ningún enumerador (global)

NULL, // Definir no

(DIGCF_PRESENT | // Solo dispositivos presentes

DIGCF_DEVICEINTERFACE)); // Dispositivos de clase de función.

deviceInterfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA );

//Recorre la lista y obtiene los datos de la interfaz//Enumerar dispositivos

result = SetupDiEnumDeviceInterfaces (hardwareDeviceInfoSet,

NULL, //infoData ,

&hidGUID, //interfaceClassGuid,

deviceIndex,

& deviceInterfaceData);

/* No se pudo obtener un dispositivo; posiblemente el índice sea mayor que la cantidad de dispositivos */