usb
Publicado por Ken M (1 intervención) el 18/02/2007 19:24:02
Nesesito saber como se usa el usb (tengo visual c .net pero recien lo estoy empesando a usar yo usaba gcc)
Valora esta pregunta


0



#include <windows.h>#include <winusb.h>void EnumerateUSBDevices() {
// Inicializar la API de Windowsif (CoInitializeEx(NULL, COINIT_APARTMENTTHREADED) != S_OK) {
// Manejar error de inicializaciónreturn;
} // Enumerar dispositivos USBHDEVINFO deviceInfo = SetupDiGetClassDevs(&GUID_DEVINTERFACE_USB_DEVICE, 0, 0, DIGCF_DEVICEINTERFACE | DIGCF_PRESENT);
SP_DEVICE_INTERFACE_DATA interfaceData;
interfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
// Iterar sobre los dispositivos encontradosfor (DWORD index = 0; SetupDiEnumDeviceInterfaces(deviceInfo, 0, &GUID_DEVINTERFACE_USB_DEVICE, index, &interfaceData); ++index) {
// Realizar operaciones con el dispositivo, como obtener información sobre el dispositivo, abrirlo, etc. // ... // Ejemplo: Obtener el nombre del dispositivoWCHAR deviceName[256];
if (SetupDiGetDeviceInterfaceDetail(deviceInfo, &interfaceData, 0, 0, 0, 0)) {
SP_DEVICE_INTERFACE_DETAIL_DATA* interfaceDetailData = (SP_DEVICE_INTERFACE_DETAIL_DATA*)malloc(sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA));
interfaceDetailData->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA);
if (SetupDiGetDeviceInterfaceDetail(deviceInfo, &interfaceData, interfaceDetailData, sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA), 0, 0)) {
// Usar interfaceDetailData->DevicePath para obtener el nombre del dispositivo }free(interfaceDetailData);
} } // Liberar recursosSetupDiDestroyDeviceInfoList(deviceInfo);
CoUninitialize();
}
