客户说:
要加一个自动检测键盘,鼠标是否工作正常的功能。
也就是说,如果键盘或者鼠标不工作了,就要弹出提
示。不过当然不是,晃一下鼠标看动不动,用键盘写
几个字看出不出来判断键盘鼠标是否工作正常。而是
程序自动检测,比如键盘被拔下去了,鼠标被拔掉了。
或者出什么故障了,自动给出提示。我不知道怎么弄?
想问下大家,这个有什么办法可以实现吗?多谢。
要加一个自动检测键盘,鼠标是否工作正常的功能。
也就是说,如果键盘或者鼠标不工作了,就要弹出提
示。不过当然不是,晃一下鼠标看动不动,用键盘写
几个字看出不出来判断键盘鼠标是否工作正常。而是
程序自动检测,比如键盘被拔下去了,鼠标被拔掉了。
或者出什么故障了,自动给出提示。我不知道怎么弄?
想问下大家,这个有什么办法可以实现吗?多谢。
解决方案 »
- VC同时调用excel和word的时候发生冲突
- 简单窗口最前的问题?
- 请问如何隐藏toolbar上右键点击后,选custom,弹出的custom dialog中的help button?
- 如何从CDialog中派生一个新的CMyDialog类,使这个新类能够再派生出别的类?
- 如何取得系统时间,急!!!
- 请问如何实现数据库的注销?
- 紧急!请问谁对FLASH SDK及较熟悉,烦指点迷津!谢谢!
- 请教:在一个框架中进行view的切换,切换时先删除当前view,然后动态创建新的view,结果删除不掉!
- 不用ODBC在VC中用ADO连接Oracle数据库怎样
- 动态连接库释放主程序内存产生的错误???
- 关于自绘LISTBOX
- 从编辑框中获取的字符串形式的数转换为整数
你看一下WM_DEVICECHANGE
不过键盘鼠标都没有通信能力
程序自动去检测坏没坏恐怕实现不了
你们还是好好和客户说说吧
除非有特制的输入设备
这是以前的代码,翻出来给你试试吧.
DEV_BROADCAST_DEVICEINTERFACE NotificationFilter; ZeroMemory( &NotificationFilter, sizeof(NotificationFilter) );
NotificationFilter.dbcc_size =
sizeof(DEV_BROADCAST_DEVICEINTERFACE);
NotificationFilter.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE;
NotificationFilter.dbcc_classguid = InterfaceClassGuid; *hDevNotify = RegisterDeviceNotification( hwnd,
&NotificationFilter,
DEVICE_NOTIFY_WINDOW_HANDLE
); if(!*hDevNotify)
{
return FALSE;
}......LRESULT CALLBACK MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
static CDevice * pDevice = NULL;
LPCREATESTRUCT lPCreate = NULL; switch (uMsg)
{ case WM_DEVICECHANGE:
switch(LOWORD(wParam))
{
case DBT_DEVICEARRIVAL:
pDevice->Connect();
break;
case DBT_DEVICEREMOVECOMPLETE:
pDevice->DisConnect();
break;
case DBT_DEVNODES_CHANGED:
break;
case DBT_DEVICEREMOVEPENDING:
break;
case DBT_CONFIGCHANGED:
break;
default:
break;
}
break;