Windows消息事实就是一个数值。

private const int WM_DEVICECHANGE = 0x219; //设备改变
private const int DBT_DEVICEARRIVAL = 0x8000; //检测到新设备private const int DBT_DEVICEREMOVECOMPLETE = 0x8004; //移除设备private const int DBT_DEVTYP_VOLUME = 0x00000002; //逻辑卷标const int DBT_CONFIGCHANGECANCELED = 0x0019; //配置改变取消const int DBT_CONFIGCHANGED = 0x0018; //配置改变const int DBT_CUSTOMEVENT = 0x8006;const int DBT_DEVICEQUERYREMOVE = 0x8001;const int DBT_DEVICEREMOVEPENDING = 0x8003;const int DBT_DEVICETYPESPECIFIC = 0x8005;const int DBT_DEVNODES_CHANGED = 0x0007;const int DBT_QUERYCHANGECONFIG = 0x0017;const int DBT_USERDEFINED = 0xFFFF;[StructLayout(LayoutKind.Sequential)]public struct DEV_BROADCAST_VOLUME{public int dbcv_size;public int dbcv_devicetype;public int dbcv_reserved;public int dbcv_unitmask;}

Wndproc是Windows操作系统向应用程序发送一系列消息之一,每个窗口会有一个窗口过程的回调函数,分别是窗口句柄、消息ID、WPARAM、LPARAM。
重写WndProc函数,对不同消息事件进行处理

 protected override void WndProc(ref Message m){base.WndProc(ref m);switch (m.Msg){case WM_DEVICECHANGE:switch ((int) m.WParam){case DBT_DEVICEARRIVAL:Console.WriteLine("新设备");int devType = Marshal.ReadInt32(m.LParam, 4);Console.WriteLine($"设备类型{devType}");if (devType == DBT_DEVTYP_VOLUME){Console.WriteLine("新设备");}break;case DBT_DEVICEREMOVECOMPLETE:Console.WriteLine("设备移除");break;}break;}}

c#-检查USB硬件变化相关推荐

  1. 怎样检测计算机硬件是否正常,怎么检查电脑硬件是否有问题

    电脑要正常运行必须硬件和软件都没有问题,如果某一软件出了问题就会导致电脑对应的某个功能不正常,从而影响使用,硬件坏了怎么办呢?怎么检查电脑硬件是否有问题呢?接下来大家跟着学习啦小编一起来了解一下检查电 ...

  2. 工控 组态王6.60 SP3软件7.5 SP4 授权软件狗 USB 硬件狗 分享 下载

    工控 组态王6.60 SP3软件 授权软件狗 USB 硬件狗 分享 下载 技术咨询QQ:3137723307 组态王6.60是一款非常好用的工业类自动化控制软件,此版本继承了前面几个版本的所有功能,可 ...

  3. Usb硬件解析及设计

    USB有 "主设备" 和 "从设备" 之分. "主设备" 通常写为 "USB HOST"或"USB OTG&q ...

  4. 加密狗,由USB硬件加密狗–软加密狗(软锁)–云授权的转变

    加密狗,由USB硬件加密狗–软加密狗(软锁)–云授权的转变 加密狗软授权常见问题 圣天诺LDK软授权 问:什么是软授权? 答:软授权(也称软锁)是以计算机文件作为载体的软件许可证(License) 类 ...

  5. USB硬件 键盘鼠标控制器 V2.0 支持二次开发

    USB硬件 控制键盘鼠标 V2.0 支持二次开发提供开发包 usb键盘鼠标控制器由来: 听说过"按键精灵"这个软件,就不难理解了;就是这个思路,做一个真正的硬件键盘鼠标,然后我们控 ...

  6. USB硬件 键盘鼠标控制器 Lao-UKM V3.1 (增加高级客户功能)

    原理上和V2.0一样,通过串口发送命令,控制另一台电脑的键盘鼠标, 被控制的电脑不用装软件,因为控制器本身就是一个标准的usb键盘鼠标, 可以一台电脑控制多台计算机,也可以在一台电脑上使用. V3.1 ...

  7. linux查看usb硬件_使用USB记忆棒测试Linux硬件兼容性

    linux查看usb硬件 像其他所有人一样,我们中使用Linux的人有时需要购买新计算机. 尽管硬件兼容性差的日子早已过去,但仍然有可能遇到问题. 仅仅去本地商店,例如Rale​​igh的Intrex ...

  8. java中实现与USB硬件通信

    目前在网络上查询java与usb的设备通信资源都非常的少大多都来自一个05年的文章,本人也摘取了网上的例子,例子中直接运行也出现了一些问题,经过debug还是可以直接在windows上直接使用java ...

  9. 检查硬件变化的命令kudzu

    当新加一个硬件时,系统并没有出现,可以通过这个命令来检查下: 转载于:https://www.cnblogs.com/kaishirenshi/p/7856316.html

最新文章

  1. 基于Kubernetes的云平台存储容器化实践
  2. 疑邻盗斧 - 杭电节能信标限流争论
  3. Ubuntu root密码设置
  4. 计算机竞赛作文,计算机打字比赛作文例文
  5. 高二计算机水平测试题,高二计算机学业水平测试 模拟试题(附答案)
  6. 【C++程序员学 python】python 之奇葩地方
  7. 很高兴加入 英文_XR车载公司Holoride加入高通XR计划
  8. centos 分区
  9. 电力安全工作规程发电厂和变电站电气部分_一招告诉你,何为电力系统
  10. with 语句的妙用
  11. 无法读源文件或磁盘_磁盘阵列RAID1+0和RAID0+1的区别
  12. 大力发展职业技术教育,高等教育也要跟动车高铁一样降降速了
  13. 各类排序算法比较分析
  14. 人工智能数学基础8:两个重要极限及夹逼定理
  15. python跳出双循环break图例
  16. 演讲实录|OpenMLDB 与阿里云 MaxCompute 生态集成
  17. Seq2Seq基本原理
  18. Echarts3.0的简单使用,动态获取数据
  19. 计算机中用于汉字处理的是什么意思,用于汉字输出的是什么编码
  20. poi-tl——Word模板引擎应用

热门文章

  1. Python3基础知识之运算符
  2. input标签内容改变的触发事件
  3. bzoj 1468 Tree(点分治模板)
  4. 字符串的模式匹配(Java实现)
  5. 11:数值的整数次方
  6. JavaScript 面试中常见算法问题详解
  7. μCos-ii学习笔记1_概述
  8. WinForm 实现拖拽功能
  9. Ubuntu18.04 安装 gnuplot
  10. S3C6410的Bootloader的两个阶段BL1和BL2编译相关学习