资源描述:
《C++ MFC界面读写USB HID设备数据程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第一步:列举所有的HID设备:m_ctllHIDdevices.ResetContent();//这是MFC里面一个list控件,用来显示所有的HID设备的,如果你没有界面,可以不需要此行UpdateData(FALSE);//更新界面CStringtemp;intCount=0;//TotalnumberofdevicesfoundDWORDstrSize=0,requiredSize=0;BOOLresult1,result2;ULONGDeviceInterfaceDetailDataSize;//定义
2、一些变量,以后会用到SP_DEVINFO_DATADeviceInfoData;SP_DEVICE_INTERFACE_DATADeviceInterfaceData;PSP_DEVICE_INTERFACE_DETAIL_DATADeviceInterfaceDetailData;//PSP_DEVICE_INTERFACE_DETAIL_DATAtest;//第一步:获取deviceIDGUIDdeviceId;HidD_GetHidGuid(&deviceId);//第二步:获取设备信息HDEVINFO
3、handle;handle=SetupDiGetClassDevs(&deviceId,NULL,NULL,DIGCF_DEVICEINTERFACE
4、DIGCF_PRESENT);//GetonlyHIDdevices//第三步:对所有的设备进行枚举//SetupDiEnumDeviceInterfaces();result1=false;//定义一些变量result2=false;CStringtemp11="";do{DeviceInterfaceData.cbSize=sizeof(SP_DEVICE
5、_INTERFACE_DATA);result1=SetupDiEnumDeviceInterfaces(handle,NULL,//INPSP_DEVINFO_DATADeviceInfoData,OPTIONAL&deviceId,Count,&DeviceInterfaceData);//获得设备详细数据(初步)SetupDiGetDeviceInterfaceDetail(handle,&DeviceInterfaceData,NULL,0,&strSize,NULL);requiredSize=st
6、rSize;DeviceInterfaceDetailData=(PSP_DEVICE_INTERFACE_DETAIL_DATA)malloc(requiredSize);DeviceInterfaceDetailData->cbSize=sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA);DeviceInfoData.cbSize=s第一步:列举所有的HID设备:m_ctllHIDdevices.ResetContent();//这是MFC里面一个list控件,用来显示所有的H
7、ID设备的,如果你没有界面,可以不需要此行UpdateData(FALSE);//更新界面CStringtemp;intCount=0;//TotalnumberofdevicesfoundDWORDstrSize=0,requiredSize=0;BOOLresult1,result2;ULONGDeviceInterfaceDetailDataSize;//定义一些变量,以后会用到SP_DEVINFO_DATADeviceInfoData;SP_DEVICE_INTERFACE_DATADeviceInt
8、erfaceData;PSP_DEVICE_INTERFACE_DETAIL_DATADeviceInterfaceDetailData;//PSP_DEVICE_INTERFACE_DETAIL_DATAtest;//第一步:获取deviceIDGUIDdeviceId;HidD_GetHidGuid(&deviceId);//第二步:获取设备信息HDEVINFOhandle;handle=SetupDiGetClassDevs(&deviceId,NULL,NULL,DIGCF_DEVICEINTERFA
9、CE
10、DIGCF_PRESENT);//GetonlyHIDdevices//第三步:对所有的设备进行枚举//SetupDiEnumDeviceInterfaces();result1=false;//定义一些变量result2=false;CStringtemp11="";do{DeviceInterfaceData.cbSize=sizeof(SP_DEVICE_INTERFACE_DATA);