我做了一个测试程序
用来响应一个特殊的USB外设
应该做的,已经都写在这个DEMO中了,可是结果是RegisterDeviceNotification好像没起作用一样,以下列出该程序中的关键部分,请大家看看,是哪里有错!!
用来响应一个特殊的USB外设
应该做的,已经都写在这个DEMO中了,可是结果是RegisterDeviceNotification好像没起作用一样,以下列出该程序中的关键部分,请大家看看,是哪里有错!!
解决方案 »
- VC基于对话框程序如何依次创建两个子对话框。
- ListView怎么清除所有内容,回到初始状态,简单问题在线等
- 为什么我在对话框中设置的SCROLL属性后,SCROLL条可以点上下,但是不能点空白处翻页。而且为什么RANGE变了范围滚动条的大小没有改变啊?
- c++
- 怎么用线程传送多个文件?该如何传递参数(SOCKET,文件列表)
- 在server端创建socket时如果指定SOCK_STREAM属性,是不是意味着在accept 时会一直block直到有连接到来? 还有,如果client端没有发送消息
- 网上下载了个.net论坛,放到wwwroot下却不能运行,这是为什么?
- 为什么——再问:为什么我放在CDialogBar中的Button总是Disabled的?没人遇到过同样问题吗?
- MDI窗口如何改变字窗口的路径名和标题
- 如何设置安装时的背景图片,在InstallShield 5.1中。
- 没有理由的内存泄漏问题
- cryptAPI怎样设置自己的公,私钥和会话密钥?
中定义了如下的内容:
private:
bool DoRegisterDeviceInterface(GUID InterfaceClassGuid,HDEVNOTIFY *hDevNotify);//和MSDN的列子一样的
GUID ICGuid;//用来保存我的USB外设的CLSID
HDEVNOTIFY *hNotifyDevNode;//用在上面的函数中来保存
//RegisterDeviceNotification的结果,大家知道的
DEV_BROADCAST_DEVICEINTERFACE NotificationFilter;
DWORD Err; ZeroMemory( &NotificationFilter, sizeof(NotificationFilter) );
NotificationFilter.dbcc_size =
sizeof(DEV_BROADCAST_DEVICEINTERFACE);
NotificationFilter.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE;
NotificationFilter.dbcc_classguid = InterfaceClassGuid;
if (!m_hWnd) MessageBox("不正确","提示",MB_OK);
*hDevNotify = RegisterDeviceNotification( m_hWnd,
&NotificationFilter,
DEVICE_NOTIFY_WINDOW_HANDLE
); if(!*hDevNotify)
{
Err = GetLastError();
printf( "RegisterDeviceNotification failed: %lx.\n", Err);
return FALSE;
} return TRUE;
ICGuid.Data1=0x36FC9E60;
ICGuid.Data2= 0xC465;
ICGuid.Data3= 0x11CF;
ICGuid.Data4[0]= 0x80;
ICGuid.Data4[1]= 0x56;
ICGuid.Data4[2]= 0x44;
ICGuid.Data4[3]= 0x45;
ICGuid.Data4[4]= 0x53;
ICGuid.Data4[5]= 0x54;
ICGuid.Data4[6]= 0x00;
ICGuid.Data4[7]= 0x00;
hNotifyDevNode=new HDEVNOTIFY;
然后,我在CMainFrm::OnCreate()
中调用了这个DoRegisterDeviceInterface(ICGuid,hNotifyDevNode)
这时候CMainFrm::m_Hwnd应该已经有内容了。
当然我在CMainFrm的析构函数中有注销刚才的注册
可是结果和没注册前一样,我真是头大了,也没人好问
只能求教各位大虾了,大家帮帮我,我很菜的,说不定
是什么低级的问题!谢谢大家了
我一开贴
http://expert.csdn.net/Expert/topic/1367/1367327.xml?temp=.9013636
一百够的还可以给我有3千多分