using LampInspectionMachine.Core; using LampInspectionMachine.Log4xml; using LampInspectionMachine.Model; using LampInspectionMachine.Properties; using LampInspectionMachine.Resources.Language; using LampInspectionMachine.Views; using log4net.Config; using Prism.Ioc; using Prism.Unity; using System; using System.ComponentModel; using System.Globalization; using System.IO; using System.Threading; using System.Windows; using WPFLocalizeExtension.Engine; namespace LampInspectionMachine { /// /// App.xaml 的交互逻辑 /// public partial class App : PrismApplication { protected override Window CreateShell() { //XmlConfigurator.Configure(new FileInfo("Log4xml/log4net.config")); LogHelper.Info("程序启动"); return Container.Resolve(); } protected override void RegisterTypes(IContainerRegistry containerRegistry) { containerRegistry.RegisterForNavigation("RoleLoginView"); containerRegistry.RegisterForNavigation("MenuView"); containerRegistry.RegisterForNavigation("ProductView"); containerRegistry.RegisterForNavigation("SettingView"); containerRegistry.RegisterForNavigation("WorkRunView"); containerRegistry.RegisterForNavigation("VisionProView"); containerRegistry.RegisterForNavigation("VisionProView"); containerRegistry.RegisterSingleton(); containerRegistry.RegisterSingleton(); containerRegistry.RegisterForNavigation("CameraView"); } private static System.Threading.Mutex mutex; protected override void OnStartup(StartupEventArgs e) { //var view = new LoginView(); //if (!(bool)view.ShowDialog()) //{ // this.Shutdown(); //} mutex = new System.Threading.Mutex(true, "OnlyRun_CRNS"); if (mutex.WaitOne(0, false)) { try { string language= FileHelper.ReadFile(FilePath.LanguageConfigurationPath); if ( language == "en" ) { var culture = new CultureInfo("en"); App.Current.Dispatcher.Thread.CurrentCulture = culture; App.Current.Dispatcher.Thread.CurrentUICulture = culture; LocalizeDictionary.Instance.Culture = culture; LampInspectionMachine.Resources.Language.Resources.Culture = culture; } } catch (Exception ex ) { FileHelper.WriteFile("en",FilePath.LanguageConfigurationPath); } base.OnStartup(e); } else { MessageBox.Show("程序已经在运行!", "提示"); this.Shutdown(); } } } }