| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- using LocalhostMES.Api.Hosting;
- using LocalhostMES.Core;
- using LocalhostMES.ViewModels;
- using LocalhostMES.ViewModels.Services;
- using LocalhostMES.ViewModels.Tabs;
- using LocalhostMES.Views;
- using Prism.Ioc;
- using Prism.Unity;
- using System;
- using System.Diagnostics;
- using System.Windows;
- namespace LocalhostMES
- {
- /// <summary>
- /// App.xaml 的交互逻辑
- /// </summary>
- public partial class App : PrismApplication
- {
- protected override Window CreateShell()
- {
- // 写入启动日志
- LogHelper.WriteLogInfo("程序启动");
- return Container.Resolve<MainView>();
- }
- protected override void RegisterTypes(IContainerRegistry containerRegistry)
- {
- containerRegistry.RegisterSingleton<IMesWorkspace, MesWorkspace>();
- containerRegistry.RegisterSingleton<WebApiService>();
- containerRegistry.Register<MainViewModel>();
- containerRegistry.Register<ApiTestViewModel>();
- containerRegistry.Register<WorkOrderManagementViewModel>();
- containerRegistry.Register<SnManagementViewModel>();
- containerRegistry.Register<KeyPartManagementViewModel>();
- containerRegistry.Register<PartCatalogViewModel>();
- containerRegistry.Register<BindRecordsViewModel>();
- containerRegistry.Register<ProcessRecordsViewModel>();
- containerRegistry.Register<TcpServerViewModel>();
- containerRegistry.Register<SystemSettingsViewModel>();
- }
- protected override void OnInitialized()
- {
- base.OnInitialized();
- ThemeManager.ApplyTheme(ThemeMode.Light);
- AutoRunSystemSettings();
- }
- private void AutoRunSystemSettings()
- {
- try
- {
- var systemSettingsViewModel = Container.Resolve<SystemSettingsViewModel>();
- systemSettingsViewModel.StartService();
- systemSettingsViewModel.SaveSettings();
- Container.Resolve<SystemSettingsViewModel>().StartService();
- bool isRunning = Process.GetProcessesByName("TeamAAS-VM").Length > 0;
- if ( !isRunning )
- {
- Process.Start(@"D:\HANS LASER\TeamAAS-VP.exe");
- }
- }
- catch ( Exception ex )
- {
- MessageBox.Show($"启动自动初始化系统设置失败: {ex.Message}");
- }
- }
- private static System.Threading.Mutex mutex;
- protected override void OnStartup(StartupEventArgs e)
- {
- mutex = new System.Threading.Mutex(true, "LocalhostMes_CRNS");
- if ( mutex.WaitOne(0, false) )
- {
- base.OnStartup(e);
- }
- else
- {
- MessageBox.Show("程序已经在运行!", "提示");
- this.Shutdown();
- }
- }
- }
- }
|