Example #1
0
        void OnApplicationExitHandler(bool isShutdown)
        {
            lock (cleanupLocker)
            {
                if (isCleanupDone)
                {
                    return;
                }

                setting.isShutdown = isShutdown;

                pluginsServ.Cleanup();
                notifier.Cleanup();
                servers.Cleanup();
                setting.Cleanup();
                isCleanupDone = true;
            }
        }
Example #2
0
        void OnApplicationExitHandler(bool isShutdown)
        {
            lock (cleanupLocker)
            {
                if (isCleanupDone)
                {
                    return;
                }

                setting.isShutdown = isShutdown;

                notifier.Cleanup();
                servers.Cleanup();
                pacServer.Cleanup();
                setting.Cleanup();
                Lib.Sys.ProxySetter.SetProxy(orgSysProxySetting);

                isCleanupDone = true;
            }
        }
Example #3
0
        Launcher()
        {
            // warn-up
            var cache     = Cache.Instance;
            var pacServer = PacServer.Instance;

            setting  = Setting.Instance;
            servers  = Servers.Instance;
            notifier = Notifier.Instance;

            // set culture
            SetCulture(setting.culture);

            // dependency injection
            Lib.ImportParser.Run(cache);
            pacServer.Run(setting);
            servers.Run(setting, pacServer, cache);
            notifier.Run(setting, servers);

            Application.ApplicationExit += (s, a) =>
            {
                notifier.Cleanup();
                servers.Cleanup();
                pacServer.Cleanup();
                setting.Cleanup();
            };

            Microsoft.Win32.SystemEvents.SessionEnding +=
                (s, a) => Application.Exit();

            Application.ThreadException +=
                (s, a) => SaveUnHandledException(
                    a.Exception.ToString());

            AppDomain.CurrentDomain.UnhandledException +=
                (s, a) => SaveUnHandledException(
                    (a.ExceptionObject as Exception).ToString());
        }