// Windows应用程序都是基于消息/事件驱动的,任何一个窗口都能接收消息,并对该消息作出相应的处理。
// U盘等移动设备的插入或者移除操作有与之对应的消息-WM_DEVICECHANGE。实现监控U盘的插入和拔出,只需要捕获这个消息并对它进行处理即可实现。
// PS:WindowProc函数:
// 功能:消息处理回调函数。
// 原型:LRESULT CALLBACK WindowProc (
// HWND hwnd,
// UINT uMsg,
// WPARAM wParam,
// LPARAM lParam
// )
// 参数:hwnd:指定窗口的句柄。
// uMsg:消息ID,是一个枚举值,这里是WM_DEVICECHANGE.
// wParam:消息附带的参数,改参数可以是Dbt.h头文件中的以下值之一:
// DBT_CONFIGCHANGECANCELED:更改当前配置(插入或移除)的请求已取消。
// DBT_CONFIGCHAGED:由于插入或移除,当前配置已更改。
// DBT_CUSTOMLEVEL:发生了自定义事件。
// DBT_DEVICEARRIVAL:已插入了设备或介质,现在可以使用它。
// DBT_DEVICEQUERYREMOVE:请求删除设备或介质的权限。
// DBT_DEVICEREMOVECOMPLETE:已删除设备或介质。
// DBT_DEVICEREMOVEPENDING:即将删除一个介质或设备。
// DBT_DEVICETYPESPECIFIC:设备发生特定事件。
// DBT_DEVNODES_CHANGED:已将设备添加到系统或从系统中删除。
// DBT_QUERYCHANGECONFIG:请求权限更改当前配置。
// DBT_USERDEFINED:此消息的含义是由用户自己定义。
// lParam:指向由事件特定的数据结构的指针。其格式取决于wParam参数的值。
// 结果:若返回TRUE表示授予请求。若返回BROADCAST_QUERY_DENY
Windows下的U盘监控
最新推荐文章于 2024-11-20 15:10:28 发布
本文介绍了如何在Windows操作系统中实现对U盘插入事件的监控,包括使用系统事件查看器跟踪USB设备,以及通过编程方式利用Windows API检测U盘的接入情况。

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



