private void StartInsertWatcher()
{
var scope = new ManagementScope("root\\CIMV2") { Options = { EnablePrivileges = true } };
var query = new WqlEventQuery
{
EventClassName = "__InstanceCreationEvent",
WithinInterval = TimeSpan.FromSeconds(3),
Condition = "TargetInstance ISA 'Win32_USBControllerdevice'"
};
this.insertWatcher = new ManagementEventWatcher(scope, query);
this.insertWatcher.EventArrived += (sender, e) => this.DriveInserted.RaiseSafe(this, EventArgs.Empty);
this.insertWatcher.Start();
}