Пример #1
0
        //結束程序
        static public void EXIT()
        {
            EXITFLAG = true;

            //中止一切線程
            ThreadManager.BreakAll();

            //結束一切進程
            ProcessManager.KillAll();

            //線程和進程結束後, 變數的值就不可能再有變化了
            //此時可以保存變數的值
            Variables.Save(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\DATA");

            //拋棄圖標
            notifyIcon.Dispose();
            notifyIcon = null;

            //處理完畢, 可以通知程序退出
            Application.Exit();
        }
Пример #2
0
        //重啟程序
        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();
        }