vc++中WM_DEVICECHANGE消息函数该怎么添加呢

我创建了一个对话框程序,该怎么添加WM_DEVICECHANGE函数呢,找不到路径啊... 我创建了一个对话框程序,该怎么添加WM_DEVICECHANGE函数呢,找不到路径啊 展开
 我来答
百度网友afb7b58
推荐于2018-04-05 · 超过23用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:40.1万
展开全部
1.添加消息

消息映射
BEGIN_MESSAGE_MAP(CAFT_1394Dlg, CDialog)
//{{AFX_MSG_MAP(CAFT_1394Dlg)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
...
ON_WM_DEVICECHANGE()
//}}AFX_MSG_MAP

声明消息响应函数:
afx_msg BOOL OnDeviceChange(UINT nEventType, DWORD dwData);

定义函数内容:

BOOL XXXXXXX::OnDeviceChange(UINT nEventType,DWORD dwData)
{
DEV_BROADCAST_DEVICEINTERFACE* dbd = (DEV_BROADCAST_DEVICEINTERFACE*) dwData;

//这里进行信息匹配,比如guid等

//针对各个事件进行处理.
switch (nEventType)
{
case DBT_DEVICEREMOVECOMPLETE:
...
break;
case DBT_DEVICEARRIVAL:
...
break;
...
...
...

default:
break;
}

return TRUE;

}

2.注册设备
if (Handle == NULL)
return FALSE;

DEV_BROADCAST_DEVICEINTERFACE DevInt;
memset(&DevInt,0,sizeof(DEV_BROADCAST_DEVICEINTERFACE));
DevInt.dbcc_size = sizeof(DEV_BROADCAST_DEVICEINTERFACE);
DevInt.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE;

DevInt.dbcc_classguid = GetCurrentUSBGUID();//m_usb->GetDriverGUID();
if (!RegisterDeviceNotification(m_hWnd, &DevInt,DEVICE_NOTIFY_WINDOW_HANDLE) )
return FALSE;

只有注册了该设备,OnDeviceChange才能获得详细的信息,否则收到的参数都是0007.

手动添加吧

我也没找到
天蝎神经侠侣
高粉答主

2015-07-09 · 关注我不会让你失望
知道大有可为答主
回答量:7533
采纳率:67%
帮助的人:724万
展开全部
1.添加消息

消息映射
BEGIN_MESSAGE_MAP(CAFT_1394Dlg, CDialog)
//{{AFX_MSG_MAP(CAFT_1394Dlg)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
...
ON_WM_DEVICECHANGE()
//}}AFX_MSG_MAP

声明消息响应函数:
afx_msg BOOL OnDeviceChange(UINT nEventType, DWORD dwData);

定义函数内容:

BOOL XXXXXXX::OnDeviceChange(UINT nEventType,DWORD dwData)
{
DEV_BROADCAST_DEVICEINTERFACE* dbd = (DEV_BROADCAST_DEVICEINTERFACE*) dwData;

//这里进行信息匹配,比如guid等

//针对各个事件进行处理.
switch (nEventType)
{
case DBT_DEVICEREMOVECOMPLETE:
...
break;
case DBT_DEVICEARRIVAL:
...
break;
...
...
...

default:
break;
}

return TRUE;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式