怎样检测指定GUID 的USB键盘的插入??谢谢,

kellyxinee 2007-04-10 08:29:46
首先感谢 constantine(飘遥的安吉儿) 提供了我很多重要信息,Thank you very much,
这些代码(部分)好像对所有USB设备的插拨都有反应,怎样使它只反应固定GUID的设备?
dbi: DEV_BROADCAST_DEVICEINTERFACE;
Size: Integer;
r: Pointer;
begin
Result := False;
Size := SizeOf(DEV_BROADCAST_DEVICEINTERFACE);
ZeroMemory(@dbi, Size);
dbi.dbcc_size := Size;
dbi.dbcc_devicetype := DBT_DEVTYP_DEVICEINTERFACE; //GUID is a DWORD
dbi.dbcc_reserved := 0;
dbi.dbcc_classguid := StringToGuid(FUsbGuid); //GUID_DEVINTERFACE_USB_DEVICE;
dbi.dbcc_name := 0;
//注册消息
r := RegisterDeviceNotification(FWindowHandle, @dbi, DEVICE_NOTIFY_WINDOW_HANDLE);
if Assigned(r) then
Result := True
...全文
431 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kellyxinee 2007-04-12
  • 打赏
  • 举报
回复
请问怎样注册自已设备的GUID呢? 有没有C++Builder代码啊?
constantine 2007-04-11
  • 打赏
  • 举报
回复
FUsbGuid 使用你自己的USB设备的guid就可以了
用UnRegisterDeviceNotification把GUID_DEVINTERFACE_USB_DEVICE反注册掉,然后再注册你自己的guid,这样就可以只放映你自己的guid。
如果你用RegisterDeviceNotification注册几个特别设备的guid,那么就可以提示几个
GUID_DEVINTERFACE_USB_DEVICE是总管所有USB的,所以什么USB插入都反映出来了
kellyxinee 2007-04-11
  • 打赏
  • 举报
回复
应该有知道的大侠吧, 感激万分!
kellyxinee 2007-04-10
  • 打赏
  • 举报
回复
星期二怎么没人来啊, 各位兄弟姐妹

1,222

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧