首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

急求关于USB通讯的有关问题

2013-03-29 
急求关于USB通讯的问题大家好:正在写一个USB通讯的程序:#include setupapi.h#define USBIO_IID {0x325dd

急求关于USB通讯的问题
大家好:
正在写一个USB通讯的程序:


#include "setupapi.h"
#define USBIO_IID {0x325ddf96, 0x938c, 0x11d3, {0x9e, 0x34, 0x00, 0x80, 0xc8, 0x27, 0x27, 0xf4}}
#define DEVICE_NUMBER 0
HDEVINFO DevInfo;

  GUID g_UsbioID=USBIO_IID;
  SP_DEVICE_INTERFACE_DATA DevData;
  SP_INTERFACE_DEVICE_DETAIL_DATA *DevDetail = NULL;
  DWORD ReqLen;
  DevInfo=SetupDiGetClassDevs(&g_UsbioID,NULL,NULL,DIGCF_DEVICEINTERFACE|DIGCF_PRESENT);
  SetupDiEnumDeviceInterfaces(DevInfo, NULL,&g_UsbioID, DEVICE_NUMBER, &DevData );  //返回值为0
  DWORD code =GetLastError();       //错误代码1784
  SetupDiGetDeviceInterfaceDetail(DevInfo, &DevData, NULL,0, &ReqLen, NULL);
  DWORD ni =GetLastError();
  DevDetail = (SP_INTERFACE_DEVICE_DETAIL_DATA*) malloc(ReqLen);
  // now get the detailed device information
  DevDetail->cbSize = sizeof(SP_INTERFACE_DEVICE_DETAIL_DATA);
  SetupDiGetDeviceInterfaceDetail(DevInfo, &DevData, DevDetail,ReqLen, &ReqLen, NULL);
  // open the device, use OVERLAPPED flag if necessary
  // use DevDetail->DevicePath as device name
  hdle = CreateFile(DevDetail->DevicePath,GENERIC_READ|GENERIC_WRITE,FILE_SHARE_WRITE|FILE_SHARE_READ,NULL,OPEN_EXISTING,0,NULL);


错误代码1784看了半天也没找到原因,急求,谢谢。在别的地方开帖给分
[解决办法]
SP_DEVICE_INTERFACE_DATA 需要设置 cbSize.

热点排行