vc++中WM_DEVICECHANGE消息函數(shù)該怎么添加呢
1.添加消息 消息映射 BEGIN_MESSAGE_MAP(CAFT_1394Dlg, CDialog) //{{AFX_MSG_MAP(CAFT_1394Dlg) ON_WM_PAINT() ON_WM_QUERYDRAGICON() ... ON_WM_DEVICECHANGE() //}}AFX_MSG_MAP 聲明消息響應(yīng)函數(shù): afx_msg BOOL OnDeviceChange(UINT nEventType, DWORD dwData); 定義函數(shù)內(nèi)容: BOOL XXXXXXX::OnDeviceChange(UINT nEventType,DWORD dwData) { DEV_BROADCAST_DEVICEINTERFACE* dbd = (DEV_BROADCAST_DEVICEINTERFACE*) dwData; //這里進(jìn)行信息匹配,比如guid等 //針對(duì)各個(gè)事件進(jìn)行處理. switch (nEventType) { case DBT_DEVICEREMOVECOMPLETE: ... break; case DBT_DEVICEARRIVAL: ... break; ... ... ... default: break; } return TRUE; } 2.注冊(cè)設(shè)備 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; 只有注冊(cè)了該設(shè)備,OnDeviceChange才能獲得詳細(xì)的信息,否則收到的參數(shù)都是0007. 手動(dòng)添加吧 我也沒(méi)找到
posted on 2010-11-18 08:52 wrh 閱讀(3316) 評(píng)論(0) 編輯 收藏 引用