|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- using Shadowsocks.Controller;
- using Shadowsocks.Properties;
- using Shadowsocks.View;
- using System;
- using System.Collections.Generic;
- using System.Diagnostics;
- using System.IO;
- using System.Threading;
- using System.Windows.Forms;
-
- namespace Shadowsocks
- {
- static class Program
- {
- /// <summary>
- /// 应用程序的主入口点。
- /// </summary>
- [STAThread]
- static void Main()
- {
- Util.Util.ReleaseMemory();
- using (Mutex mutex = new Mutex(false, "Global\\" + "71981632-A427-497F-AB91-241CD227EC1F"))
- {
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(false);
-
- if (!mutex.WaitOne(0, false))
- {
- Process[] oldProcesses = Process.GetProcessesByName("Shadowsocks");
- if (oldProcesses.Length > 0)
- {
- Process oldProcess = oldProcesses[0];
- }
- MessageBox.Show("Shadowsocks is already running.\n\nFind Shadowsocks icon in your notify tray.");
- return;
- }
- Directory.SetCurrentDirectory(Application.StartupPath);
- #if !DEBUG
- Logging.OpenLogFile();
- #endif
- ShadowsocksController controller = new ShadowsocksController();
-
- MenuViewController viewController = new MenuViewController(controller);
-
- controller.Start();
-
- Application.Run();
- }
- }
- }
- }
|