|
@@ -9,8 +9,17 @@ class Program
|
|
|
// SynchronizationContext-reliant code before AppMain is called: things aren't initialized
|
|
// SynchronizationContext-reliant code before AppMain is called: things aren't initialized
|
|
|
// yet and stuff might break.
|
|
// yet and stuff might break.
|
|
|
[STAThread]
|
|
[STAThread]
|
|
|
- public static void Main(string[] args) => BuildAvaloniaApp()
|
|
|
|
|
- .StartWithClassicDesktopLifetime(args);
|
|
|
|
|
|
|
+ public static void Main(string[] args)
|
|
|
|
|
+ {
|
|
|
|
|
+ // 单实例检测:如果已有实例运行,通知它激活窗口后退出
|
|
|
|
|
+ if (!SingleInstanceHelper.TryAcquire())
|
|
|
|
|
+ {
|
|
|
|
|
+ SingleInstanceHelper.ActivateExistingInstance();
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ BuildAvaloniaApp().StartWithClassicDesktopLifetime(args);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
// Avalonia configuration, don't remove; also used by visual designer.
|
|
// Avalonia configuration, don't remove; also used by visual designer.
|
|
|
public static AppBuilder BuildAvaloniaApp()
|
|
public static AppBuilder BuildAvaloniaApp()
|