Asp tutorial. net identifying U disk instance code
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 usb
{
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 = 0 xffff;
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: // USB flash drive
Driveinfo [] s = driveinfo. getdrives ();
Foreach (driveinfo drive in s)
{
If (drive. drivetype = drivetype. removable)
{
Richtextbox1.appendtext ("U disk inserted, drive letter:" + drive. name. tostring () + "rn ");
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: // unmount the USB flash drive
Richtextbox1.appendtext ("U disk unmounted, drive letter :");
Break;
Case dbt_deviceremovepending:
Messagebox. show ("7 ");
Break;
Case dbt_devicetypespecific:
Messagebox. show ("8 ");
Break;
Case dbt_devnodes_changed: // available when the device changes
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 );
}
Private void button#click (object sender, eventargs e)
{
}
}
} %>