c# code detect inset/remove events at usb port

  • Thread starter Thread starter sanjana
  • Start date Start date
S

sanjana

hi
i wanna detect if a anything is connected to the usb port
I am using system.management class for tht purpose
this is my code

class usbdetect
{
public static void Main()
{
usbdetect we = new usbdetect();
ManagementEventWatcher w= null;
WqlEventQuery q;
ManagementOperationObserver observer = new
ManagementOperationObserver();
// Bind to local machine
ManagementScope scope = new ManagementScope("root\\CIMV2");
scope.Options.EnablePrivileges = true; //sets required privilege
try
{
q = new WqlEventQuery();
q.EventClassName = "__InstanceOperationEvent";
q.WithinInterval = new TimeSpan(0,0,3);
q.Condition = @"TargetInstance ISA 'Win32_USBController'";

Console.WriteLine(q.QueryString);
w = new ManagementEventWatcher(scope, q);

w.EventArrived += new EventArrivedEventHandler(we.UsbEventArrived);
w.Start();
Console.ReadLine(); // block main thread for test purposes
}
catch(Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
w.Stop();
}
}
public void UsbEventArrived(object sender, EventArrivedEventArgs e)
{
//Get the Event object and display it
foreach(PropertyData pd in e.NewEvent.Properties)
{
ManagementBaseObject mbo = null;
if(( mbo = pd.Value as ManagementBaseObject) != null)
{
foreach(PropertyData prop in mbo.Properties)
Console.WriteLine("{0} - {1}", prop.Name, prop.Value);
}
}
}

}

but its not working.......? wats the error..it does not detect if
insert a device at the usb port..
wats the error..can anyone help me
 
You are inserting/removing USB devices don't you?
The class you should watch is:
Win32_USBControllerDevice
not the controller itself...


Willy.
 
hi u r rite..
that work is done
thanx ..

event gets fired if anything is plugged in usb port
1)But the same event gets fired if device is inserted or removed..
so inside this event i wanna detect if device got inserted or
removed........CAN ANYONE HELP ME??????
2)also i wanna find Total storage (capacity) and Available
storage(unused) of device........CAN ANYONE HELP ME??????

thanx
 
hi
ya u r rite..USBCONTROLLERDEVICE..is to be used ........now the event
is getting fired..
the same event gets fired while inserting n removing device..
Inside this event i wanna write a code to display message "device
inserted " and when a device gets removed "device removed"..so inside
the evnet..i wanna checkif
1)the device is inserted or removed..HOw do i do tht??
2)also i wanna check Total storage (capacity)of the device connected
c) storage(unused)available in the device

how can i do this 3 things..can anyone help me??????????????

thanx
 
hai
is there any namespace should i declear for this code if s ur plz give the
namespace
 
Back
Top