diff --git a/SlnMesnac.WPF/App.xaml b/SlnMesnac.WPF/App.xaml index e613bdf..48f0a12 100644 --- a/SlnMesnac.WPF/App.xaml +++ b/SlnMesnac.WPF/App.xaml @@ -4,6 +4,11 @@ xmlns:local="clr-namespace:SlnMesnac.WPF" StartupUri="MainWindow.xaml"> - + + + + + + diff --git a/SlnMesnac.WPF/App.xaml.cs b/SlnMesnac.WPF/App.xaml.cs index 7bad7db..78c0506 100644 --- a/SlnMesnac.WPF/App.xaml.cs +++ b/SlnMesnac.WPF/App.xaml.cs @@ -1,4 +1,5 @@ -using Microsoft.AspNetCore.Hosting; +using Lierda.WPFHelper; +using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Serilog; @@ -8,6 +9,7 @@ using System.Collections.Generic; using System.Configuration; using System.Data; using System.Linq; +using System.Threading; using System.Threading.Tasks; using System.Windows; @@ -18,11 +20,23 @@ namespace SlnMesnac.WPF /// public partial class App : Application { + private System.Threading.Mutex mutex; + private LierdaCracker cracker = new LierdaCracker(); public static IServiceProvider ServiceProvider; // Startup事件 protected override async void OnStartup(StartupEventArgs e) { + bool ret; + mutex = new System.Threading.Mutex(true, System.Diagnostics.Process.GetCurrentProcess().ProcessName, out ret); + if (!ret) + { + MessageBox.Show("应用程序已开启,禁止重复运行"); + Environment.Exit(0); + } + + cracker.Cracker(100); //设置GC回收间隔 + base.OnStartup(e); var host = CreateHostBuilder(e.Args).Build();//生成宿主。 @@ -32,8 +46,15 @@ namespace SlnMesnac.WPF var appConfig = host.Services.GetService(); var logPath = $"{appConfig.logPath}/Logs/{DateTime.UtcNow:yyyy-MM-dd}/"; Log.Information($"系统初始化完成,日志存放路径:{appConfig.logPath}"); + + } + /// + /// CreateHostBuilder + /// + /// + /// public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .UseSerilog() @@ -47,8 +68,11 @@ namespace SlnMesnac.WPF { base.OnExit(e); + Log.Information($"系统退出,当前时间:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); // 释放资源 // ... } + + } } diff --git a/SlnMesnac.WPF/MainWindow.xaml b/SlnMesnac.WPF/MainWindow.xaml index 1c3a2e8..6c6a0a4 100644 --- a/SlnMesnac.WPF/MainWindow.xaml +++ b/SlnMesnac.WPF/MainWindow.xaml @@ -5,8 +5,263 @@ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:SlnMesnac.WPF" mc:Ignorable="d" - Title="MainWindow" Height="450" Width="800"> - + Title="MainWindow" Height="1080" Width="1920" + WindowState="Maximized" WindowStyle="None" ResizeMode="NoResize" Topmost="False"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +