// public event DeviceOperationHandler DeviceInserted; // public event DeviceOperationHandler DeviceRemoved; // public event DeviceOperationHandler DiskInserted; // public event DeviceOperationHandler DiskRemoved; public VolumeMonitor() { var eventWatcher1 = new WMIEventWatcher<VolumeChangeEvent>(); var eventWatcher2 = new WMIEventWatcher<DeviceChangeEvent>(); var instanceWatcher1 = new WMIInstanceWatcher<DiskDrive>(); var instanceWatcher2 = new WMIInstanceWatcher<LogicalDisk>(); eventWatcher1.EventOccurred += delegate(VolumeChangeEvent instance) { Console.WriteLine(instance); }; eventWatcher2.EventOccurred += delegate(DeviceChangeEvent instance) { Console.WriteLine(instance); }; instanceWatcher1.InstanceCreated += delegate(DiskDrive instance) { Console.WriteLine(instance); }; instanceWatcher1.InstanceDeleted += delegate(DiskDrive instance) { Console.WriteLine(instance); }; instanceWatcher2.InstanceCreated += delegate(LogicalDisk instance) { Console.WriteLine(instance); }; instanceWatcher2.InstanceDeleted += delegate(LogicalDisk instance) { Console.WriteLine(instance); }; eventWatcher1.Start(); eventWatcher2.Start(); instanceWatcher1.Start(); instanceWatcher2.Start(); }
// public event DeviceOperationHandler DeviceInserted; // public event DeviceOperationHandler DeviceRemoved; // public event DeviceOperationHandler DiskInserted; // public event DeviceOperationHandler DiskRemoved; public VolumeMonitor() { var eventWatcher1 = new WMIEventWatcher <VolumeChangeEvent>(); var eventWatcher2 = new WMIEventWatcher <DeviceChangeEvent>(); var instanceWatcher1 = new WMIInstanceWatcher <DiskDrive>(); var instanceWatcher2 = new WMIInstanceWatcher <LogicalDisk>(); eventWatcher1.EventOccurred += delegate(VolumeChangeEvent instance) { Console.WriteLine(instance); }; eventWatcher2.EventOccurred += delegate(DeviceChangeEvent instance) { Console.WriteLine(instance); }; instanceWatcher1.InstanceCreated += delegate(DiskDrive instance) { Console.WriteLine(instance); }; instanceWatcher1.InstanceDeleted += delegate(DiskDrive instance) { Console.WriteLine(instance); }; instanceWatcher2.InstanceCreated += delegate(LogicalDisk instance) { Console.WriteLine(instance); }; instanceWatcher2.InstanceDeleted += delegate(LogicalDisk instance) { Console.WriteLine(instance); }; eventWatcher1.Start(); eventWatcher2.Start(); instanceWatcher1.Start(); instanceWatcher2.Start(); }
/// <summary> /// Constructor /// </summary> public MainView(string[] param) { using (new TimeLogger("MainView.MainView")) { InitializeComponent(); if (!System.ComponentModel.DesignerProperties.GetIsInDesignMode(this)) { DataContext = new MainViewModel(param.Count() > 0 ? param[0] : string.Empty); Messenger.Default.Register <NotificationMessage>(this, "Color", (s) => { Uri source = new Uri( string.Format("/CBR;Component/Resources/XAML/Colors/Colors.{0}.xaml", s.Notification), UriKind.Relative); Uri source2 = new Uri( string.Format("/Fluent;Component/Themes/Office2010/{0}.xaml", s.Notification), UriKind.Relative); Application.Current.Resources.BeginInit(); Application.Current.Resources.MergedDictionaries.RemoveAt(0); Application.Current.Resources.MergedDictionaries.RemoveAt(0); Application.Current.Resources.MergedDictionaries.Insert(0, (ResourceDictionary)Application.LoadComponent(source)); Application.Current.Resources.MergedDictionaries.Insert(0, (ResourceDictionary)Application.LoadComponent(source2)); Application.Current.Resources.EndInit(); }); } //start wmi watcher and load existing devices Task.Factory.StartNew(() => { try { _wmiWatcher = new WMIEventWatcher(); _wmiWatcher.StartWatchUSB(); _wmiWatcher.EventArrived += new WMIEventArrived(wmi_EventArrived); } catch (Exception err) { LogHelper.Manage("MainView.MainView start wmi watcher", err); } }); //start task to manage ByCode translations Task.Factory.StartNew(() => { try { CultureManager.Instance.GetLocalization("ByCode", "Warning", "Warning"); CultureManager.Instance.GetLocalization("ByCode", "Warning.Save", "Save the catalog and book changes ?"); CultureManager.Instance.GetLocalization("ByCode", "Warning.Delete", "Please, confirm the deletion"); CultureManager.Instance.GetLocalization("ByCode", "Warning.ScanFolder", "Your book folder is allready defined. Do you want to replace it ? Refreshing will work only with the new one."); CultureManager.Instance.GetLocalization("ByCode", "Warning.CatalogPath", "Catalog path does not exist! Please check the options box"); CultureManager.Instance.GetLocalization("ByCode", "DocumentTitle.Home", "Home"); CultureManager.Instance.GetLocalization("ByCode", "DocumentTitle.Drives", "Drives"); CultureManager.Instance.GetLocalization("ByCode", "DocumentTitle.Libraries", "Libraries"); CultureManager.Instance.GetLocalization("ByCode", "ExplorerView.Title", "Library Explorer"); CultureManager.Instance.GetLocalization("ByCode", "TocView.Title", "Table of content"); CultureManager.Instance.GetLocalization("ByCode", "DriveExplorerView.Title", "Drive Explorer"); CultureManager.Instance.GetLocalization("ByCode", "MEGA", "(Mb)"); CultureManager.Instance.GetLocalization("ByCode", "KILO", "(Kb)"); CultureManager.Instance.GetLocalization("ByCode", "Convert.Start", "Starting conversion..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.ParsingFolder", "Parsing folder {0}..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.Converting", "Converting {0}..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageFound", "{0} images founded..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageSaved", "{0} images saved..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageCountingKO", "Extracting {0} : {1} images for {2} pages - Try to merge !"); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageMerge", "Merge to {0} new images..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageError", "Error extracting {0} : {1} images for {2} pages !!"); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageCountingOK", "Extracting {0} images in {1} pages"); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageExtracted", "{0} images extracted..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.ImageZipped", "{0} images zipped..."); CultureManager.Instance.GetLocalization("ByCode", "Convert.Output", "Output file written !"); } catch (Exception err) { LogHelper.Manage("MainView.MainView start localize", err); } }); } }