社区
硬件/系统
帖子详情
捕获USB设备插入这个事件,并且可以判断它是个什么设备。
jmcooler
2005-10-28 05:54:45
就是我的程序一运行,不管什么时候只要U盘或移动硬盘一插上,就能把U盘的数据COPY到本地硬盘上.
关键是捕获USB设备插入这个事件,并且可以判断它是个什么设备。
...全文
393
3
打赏
收藏
捕获USB设备插入这个事件,并且可以判断它是个什么设备。
就是我的程序一运行,不管什么时候只要U盘或移动硬盘一插上,就能把U盘的数据COPY到本地硬盘上. 关键是捕获USB设备插入这个事件,并且可以判断它是个什么设备。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhoujiamurong
2006-05-26
打赏
举报
回复
mark
saliors
2005-10-29
打赏
举报
回复
LRESULT CTestUSBDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
if(message == WM_DEVICECHANGE) //0x8000,0x8004
{
CString str;
DEV_BROADCAST_HDR* dhr = (DEV_BROADCAST_HDR *)lParam;
switch(wParam)
{
case DBT_CONFIGCHANGECANCELED:
TRACE("DBT_CONFIGCHANGECANCELED");
break;
case DBT_CONFIGCHANGED:
TRACE("DBT_CONFIGCHANGED");
break;
case DBT_DEVICEQUERYREMOVE:
TRACE("DBT_DEVICEQUERYREMOVE");
break;
case DBT_DEVICEQUERYREMOVEFAILED:
TRACE("DBT_DEVICEQUERYREMOVEFAILED");
break;
case DBT_DEVICEREMOVEPENDING:
TRACE("DBT_DEVICEREMOVEPENDING");
break;
case DBT_DEVICETYPESPECIFIC:
TRACE("DBT_DEVICETYPESPECIFIC");
break;
case DBT_QUERYCHANGECONFIG:
TRACE("DBT_QUERYCHANGECONFIG");
break;
case DBT_USERDEFINED:
TRACE("DBT_USERDEFINED");
break;
case DBT_DEVICEARRIVAL:
if(dhr->dbch_devicetype == DBT_DEVTYP_VOLUME)
{
PDEV_BROADCAST_VOLUME lpdbv = (PDEV_BROADCAST_VOLUME)dhr;
if(lpdbv->dbcv_flags & DBTF_MEDIA)
{
str.Format("Drive %c 插入", FirstDriveFromMask(lpdbv ->dbcv_unitmask));
//AfxMessageBox(str);
}
else
{
char ch = FirstDriveFromMask(lpdbv ->dbcv_unitmask);
str.Format("%c:\\",ch);
CopyUFile((LPTSTR)(LPCTSTR)str);
}
}
break;
case DBT_DEVICEREMOVECOMPLETE:
if(dhr->dbch_devicetype == DBT_DEVTYP_VOLUME)
{
PDEV_BROADCAST_VOLUME lpdbv = (PDEV_BROADCAST_VOLUME)dhr;
if(lpdbv->dbcv_flags & DBTF_MEDIA)
{
str.Format("Drive %c 拔除",FirstDriveFromMask(lpdbv ->dbcv_unitmask));
}
else
{
str.Format("Drive %c 拔除",FirstDriveFromMask(lpdbv ->dbcv_unitmask));
}
//AfxMessageBox(str);
}
break;
default:
break;
}
}
return CDialog::WindowProc(message, wParam, lParam);
}
快乐鹦鹉
2005-10-28
打赏
举报
回复
响应WM_DEVICECHANGE消息
C#
捕获
USB
设备
插拔
事件
C#
捕获
USB
设备
插拔
事件
检测
USB
的
插入
与拔出 C#实现
检测
USB
的
插入
与拔出 C#实现 附源码
自动识别
插入
电脑
设备
的代码c#
USB
串口
C# CSharp 自动识别
设备
USB
串口
android检测U盘插拔
事件
工程里面有俩包,分别用了两种方法检测U盘热插拔,但只有利用广播方式监听U盘热插拔这种方式有效。
VC 获取
USB
设备
类型
USB
设备
插入
,或断开检测。
USB
插入
时,检测
USB
设备
类型, 如果为存储类
设备
,显示可移动磁盘的盘符
硬件/系统
2,643
社区成员
17,229
社区内容
发帖
与我相关
我的任务
硬件/系统
VC/MFC 硬件/系统
复制链接
扫一扫
分享
社区描述
VC/MFC 硬件/系统
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章