//結束程序 static public void EXIT() { EXITFLAG = true; //中止一切線程 ThreadManager.BreakAll(); //結束一切進程 ProcessManager.KillAll(); //線程和進程結束後, 變數的值就不可能再有變化了 //此時可以保存變數的值 Variables.Save(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\DATA"); //拋棄圖標 notifyIcon.Dispose(); notifyIcon = null; //處理完畢, 可以通知程序退出 Application.Exit(); }
//重啟程序 static public void RESTART() { //中止一切線程 ThreadManager.BreakAll(); //等待所有線程退出完成 while (ThreadManager.GetCurrentLoops().Count != 0) { } //結束一切進程 ProcessManager.KillAll(); //線程和進程結束後, 變數的值就不可能再有變化了 //此時可以保存變數的值 Variables.Save(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\DATA"); //拋棄圖標 notifyIcon.Dispose(); notifyIcon = null; //處理完畢, 可以通知程序重啟 Application.Restart(); }