usb设备数据的读取

tonyking1985 2010-04-03 05:06:57
如题,我想用VC做一个上层界面显示cc2531抓取的无线协议包数据,已经用 SetupDiGetInterfaceDeviceDetail获得了设备路径类似于\\?\hid#vid_046d&pid_c018#6&c45d516&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030},然后用这个路径 创建了句柄hidHandle =CreateFile( devDetail->DevicePath,
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
//FILE_FLAG_OVERLAPPED,
FILE_ATTRIBUTE_NORMAL,
NULL);
然后具体怎么能读到我的界面上来,我的简单程序如下 char* buf=NULL;
int n=65;
CString p;
buf=new char[n+1];
memset(buf,0,sizeof(char)*n);
if(buf=NULL)
{ CString m_string="准备分配内存失败";
SetDlgItemText(IDC_EDIT3,m_string);
}
DWORD nRead;
BOOL fReadStat;
fReadStat= ReadFile(app->hidHandle,buf,n,&nRead,NULL);
if(!fReadStat)
AfxMessageBox("Couldn't read");
//if(hidHandle=NULL)
//AfxMessageBox("Couldn't get HID details info");

CString m_read=buf;
SetDlgItemText(IDC_EDIT2,m_read);
if(buf)
delete[]buf;
buf=NULL;
没有任何反应,请高手指点,如何能将其数据读到Text文本框。。。
...全文
181 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
用户 昵称 2010-04-04
  • 打赏
  • 举报
回复
createfile看起来没什么差别,俺接手别的人程序基本上是这样的。


if( !HidD_GetPreparsedData( hHid, &PreparsedData ) )
{
return -1; //-7
}

if( !HidP_GetCaps( PreparsedData, &Capabilities ) )
{
return -2; //-7
}

len = 260;
if( !HidP_GetValueCaps( HidP_Output, &valueCaps, ( PUSHORT )&len, PreparsedData ) )
marrco2005 2010-04-03
  • 打赏
  • 举报
回复

2,640

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧