static void Main(string[] args) { CreateTray(); ShowWindow(ThisConsole, showWindow); var currectDisk = Directory.GetDirectoryRoot(Directory.GetCurrentDirectory()); var windowsDisk = Directory.GetDirectoryRoot(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)); var resourcesToMonitor = new List <IMonitorResource>(); if (!currectDisk.Equals(windowsDisk)) { resourcesToMonitor.Add(new FileMonitor(windowsDisk)); } resourcesToMonitor.Add(new FileMonitor(currectDisk)); resourcesToMonitor.Add(ProcessMonitor.GetInstance()); foreach (var resource in resourcesToMonitor) { Thread thread = new Thread(new ThreadStart(resource.StartMonitoring)); thread.Start(); } Application.Run(); }
static void Main(string[] args) { handler = new ConsoleEventDelegate(ConsoleEventCallback); SetConsoleCtrlHandler(handler, true); monitor = ProcessMonitor.GetInstance(); monitor.OnWindowChanged += Mon_OnWindowChanged; monitor.OnStopped += Monitor_OnStopped; while (true) { Thread.Sleep(100); } }
public MainWindow() { InitializeComponent(); using var cacheFs = CacheFileManager.GetFileCache("exclude.json"); using var streamReader = new StreamReader(cacheFs); exceptions = JsonConvert.DeserializeObject <List <string> >(streamReader.ReadToEnd()); monitor = ProcessMonitor.GetInstance(); monitor.OnWindowChanged += Mon_OnWindowChanged; monitor.OnStopped += Monitor_OnStopped; this.Closing += MainWindow_Closing; }