using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;  //添加IO命名空间  namespace CheckUdisk
{  public partial class Form1 : Form  {  //定义常量  public const int WM_DEVICECHANGE = 0x219;  public const int DBT_DEVICEARRIVAL = 0x8000;  public const int DBT_CONFIGCHANGECANCELED = 0x0019;  public const int DBT_CONFIGCHANGED = 0x0018;  public const int DBT_CUSTOMEVENT = 0x8006;             public const int DBT_DEVICEQUERYREMOVE = 0x8001;  public const int DBT_DEVICEQUERYREMOVEFAILED = 0x8002;  public const int DBT_DEVICEREMOVECOMPLETE = 0x8004;  public const int DBT_DEVICEREMOVEPENDING = 0x8003;  public const int DBT_DEVICETYPESPECIFIC = 0x8005;  public const int DBT_DEVNODES_CHANGED = 0x0007;  public const int DBT_QUERYCHANGECONFIG = 0x0017;  public const int DBT_USERDEFINED = 0xFFFF;  public Form1()  {  InitializeComponent();  }  private void Form1_Load(object sender, EventArgs e)  {  }  protected override void WndProc(ref Message m)  {  try  {  if (m.Msg == WM_DEVICECHANGE)  {  switch (m.WParam.ToInt32())  {  case WM_DEVICECHANGE:  break;  case DBT_DEVICEARRIVAL:  DriveInfo[] s = DriveInfo.GetDrives();  foreach (DriveInfo drive in s)  {  if (drive.DriveType == DriveType.Removable)  {  this.richTextBox1.AppendText("U盘已插入,盘符是" + drive.Name.ToString() + "\r\n");  break;  }  }  break;  case DBT_CONFIGCHANGECANCELED:  MessageBox.Show("2");  break;  case DBT_CONFIGCHANGED:  MessageBox.Show("3");  break;  case DBT_CUSTOMEVENT:  MessageBox.Show("4");  break;  case DBT_DEVICEQUERYREMOVE:  MessageBox.Show("5");  break;  case DBT_DEVICEQUERYREMOVEFAILED:  MessageBox.Show("6");  break;  case DBT_DEVICEREMOVECOMPLETE:  this.richTextBox1.AppendText("U盘已卸载");  break;  case DBT_DEVICEREMOVEPENDING:  MessageBox.Show("7");  break;  case DBT_DEVICETYPESPECIFIC:  MessageBox.Show("8");  break;  case DBT_DEVNODES_CHANGED:  MessageBox.Show("9");  break;  case DBT_QUERYCHANGECONFIG:  MessageBox.Show("10");  break;  case DBT_USERDEFINED:  MessageBox.Show("11");  break;  default:  break;  }  }  }  catch (Exception ex)  {  MessageBox.Show(ex.Message);  }  base.WndProc(ref m);  }  }
}  

检测USB插拔源码C#相关推荐

  1. Linux下USB suspend/resume源码分析【转】

    转自:http://blog.csdn.net/aaronychen/article/details/3928479 Linux下USB suspend/resume源码分析 Author:aaron ...

  2. 基于stm32单片机的空气质量检测仿真(仿真+源码+全套资料)

    资料编号:072 可以通过STM32的ADC检测当前的空气质量,LCD1602显示,并且可以自动控制风扇排气,也可以设置为手动排气.包含全套资料,下面是视频演示: 72-基于stm32单片机的空气质量 ...

  3. windows外接显示器,息屏后老是发出USB插拔的声音

    在将电脑息屏后,电脑总是发出USB插拔的声音,尝试了很多方法以后,最终解决方案是在显示器(不是电脑设置)的菜单栏关闭了自动检测功能,之后电脑就不会异响了,如果你也遇到这个问题,欢迎评论分享.

  4. 基于stm32单片机的甲醛气体检测proteus仿真(源码+仿真+参考论文)

    资料编号:056 检测当前的甲醛气体浓度,LCD1602显示,并且可以自动打开关闭风扇,也可以通过手动按键打开关闭风扇通风,全套资料齐全,具体功能请看下方演示视频 56-基于stm32单片机的甲醛气体 ...

  5. [智慧农业]Python基于改进YOLOv5的猕猴桃叶病害检测系统(完整源码&数据集&视频教程)

    1.背景 现如今由于农作物病虫害的多样性和复杂性,在特定的条件下其很容易在大范围内发生,导致农产品产量急剧下降.因此,预防和监测农作物病虫害已成为农业生产活动中的重要环节.当前,耕地面积逐渐减少,世界 ...

  6. Python基于OpenCV的指针式表盘检测系统(附带源码&技术文档)

    1.背景 指针式机械表盘具有安装维护方便.结构简单.防电磁干扰等诸多优点, 目前广泛应用于工矿企业.能源及计量等部门.随着仪表数量的增加及精密仪表技术的发展,人工判读已经不能满足实际应用需求.随着计算 ...

  7. java毕业设计水利施工安全检测系统设mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计水利施工安全检测系统设mybatis+源码+调试部署+系统+数据库+lw java毕业设计水利施工安全检测系统设mybatis+源码+调试部署+系统+数据库+lw 本源码技术栈: 项目 ...

  8. 计算机毕业设计JAVA水利施工安全检测系统设mybatis+源码+调试部署+系统+数据库+lw

    计算机毕业设计JAVA水利施工安全检测系统设mybatis+源码+调试部署+系统+数据库+lw 计算机毕业设计JAVA水利施工安全检测系统设mybatis+源码+调试部署+系统+数据库+lw 本源码技 ...

  9. 【缺陷检测】基于matlab AlexNet和SVM异常螺母检测【含Matlab源码 2147期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源: [缺陷检测]基于matlab形态学水果蔬菜缺陷检测[含Matlab源码 820期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2 ...

最新文章

  1. seq2seq nlp 这篇博文的引用相当好
  2. Linux环境安装python3.6(APT方式)
  3. 拍卖源码java_Java并发的AQS原理详解
  4. linux内核高分辨率定时器,64位Linux上的高分辨率定时器支持
  5. 【软件开发底层知识修炼】十九 GDB调试从入门到熟练掌握超级详细实战教程学习目录
  6. SQLServer批量倒入目录文件
  7. Shell调试Debug的三种方式
  8. 关于《编程之美》稿酬捐赠的补充说明
  9. php找不到intl,php_intl.dll找不到指定模块怎么办
  10. Java 继承——3
  11. 一个OSPF的区域备份在手册里看到的
  12. springboot-29-security(二)用户角色权限控制
  13. Jenkins持续集成环境常见问题分析及解决
  14. 利用Procexp工具监控Windows平台上的Oracle数据库性能
  15. 微软更新服务器ip地址,微软承认Windows 10更新导致路由等本地IP地址打不开
  16. 01. Couchbase简介-CouchBase从0到50
  17. 从新一期技术雷达看技术领域最新趋势
  18. 经纬能源安全稳定怎样理财收益最大?怎样理财才干收益最大?
  19. 6D Pose Estimation各方法对应的经典论文
  20. Python 批量获取今日头条街拍美图

热门文章

  1. 字节字双字地址的区别
  2. 如何编写本地shellcode
  3. SqlServer2008Ldf文件过大处理
  4. android和ios报价,安卓和iOS用户为啥转换阵营? 价格和体验是主要因素
  5. 图形用户界面常用组件
  6. (转)求质数算法的N种境界[1] - 试除法和初级筛法
  7. 亚琛工业大学计算机硕士英语项目,常州工学院德国亚琛工业大学理工硕士预科(GEC)项目报名通知...
  8. 来,做一个问卷调查(有抽奖!)
  9. 怎样用计算机做一个电子地图,怎样用计算机编制一幅地图
  10. 终极万能XSS Payload