zoukankan      html  css  js  c++  java
  • C#监听USB接入

    using   System;  
      using   System.Collections.Generic;  
      using   System.ComponentModel;  
      using   System.Data;  
      using   System.Drawing;  
      using   System.Text;  
      using   System.Windows.Forms;  
      using   System.IO;  
       
      namespace   U盘更新  
      {  
              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://U盘插入  
                                                              DriveInfo[]   s   =   DriveInfo.GetDrives();  
                                                              foreach   (DriveInfo   drive   in   s)  
                                                              {  
                                                                      if   (drive.DriveType   ==   DriveType.Removable)  
                                                                      {  
                                                                              listBox1.Items.Add("U盘已插入,盘符为:"   +   drive.Name.ToString());  
                                                                              break;  
                                                                      }  
                                                              }  
                                                              break;  
                                                      case   DBT_CONFIGCHANGECANCELED:  
                                                              break;  
                                                      case   DBT_CONFIGCHANGED:  
                                                              break;  
                                                      case   DBT_CUSTOMEVENT:  
                                                              break;  
                                                      case   DBT_DEVICEQUERYREMOVE:  
                                                              break;  
                                                      case   DBT_DEVICEQUERYREMOVEFAILED:  
                                                              break;  
                                                      case   DBT_DEVICEREMOVECOMPLETE:   //U盘卸载  
                                                              break;  
                                                      case   DBT_DEVICEREMOVEPENDING:  
                                                              break;  
                                                      case   DBT_DEVICETYPESPECIFIC:  
                                                              break;  
                                                      case   DBT_DEVNODES_CHANGED:  
                                                              break;  
                                                      case   DBT_QUERYCHANGECONFIG:  
                                                              break;  
                                                      case   DBT_USERDEFINED:  
                                                              break;  
                                                      default:  
                                                              break;  
                                              }  
                                      }  
                              }  
                              catch   (Exception   ex)  
                              {  
                                      MessageBox.Show(ex.Message);  
                              }  
                              base.WndProc(ref   m);  
                      }
  • 相关阅读:
    【django后端分离】Django Rest Framework之一般配置(简单剖析)
    【python小随笔】celery周期任务(简单原理)
    【django后端分离】mysql原生查询命令后,RawQueryset类型的自定义序列化返回json格式
    【python小随笔】Django+错误日志(配置Django报错文件指定位置)
    luogu P3194 [HNOI2008]水平可见直线 |单调栈
    luogu P6247 [SDOI2012]最近最远点对 |随机化
    luogu P3567 [POI2014]KUR-Couriers |莫队+随机化
    P6569 [NOI Online #3 提高组]魔法值| 矩阵乘法
    luogu P1452 【模板】旋转卡壳
    luogu P3829 [SHOI2012]信用卡凸包 |凸包
  • 原文地址:https://www.cnblogs.com/love2wllw/p/1734147.html
Copyright © 2011-2022 走看看