using MesAdaptor; using System; using System.Collections.Generic; using System.Configuration; using System.Data; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; namespace AwInitilizer { /// /// Interaction logic for App.xaml /// public partial class App : Application { public App():base() { DispatcherUnhandledException += App_DispatcherUnhandledException; } protected override void OnActivated(EventArgs e) { base.OnActivated(e); SetUiLanguage(); } private void SetUiLanguage() { var langSetting = AppSettingConfig.Language; if (langSetting.ToLower() == "zh-chs") { Cultures.CulturesHelper.Instance.ChangeCulture(System.Globalization.CultureInfo.GetCultureInfo("zh-CHS")); } else { Cultures.CulturesHelper.Instance.ChangeCulture(System.Globalization.CultureInfo.GetCultureInfo("en-US")); } } private void App_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e) { var fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".txt"; var msg = e.Exception.Message + "\n"+ e.Exception.StackTrace; File.WriteAllText(fileName,msg); MessageBox.Show($"App crashed,Please report error and send back {fileName}"); Application.Current.Shutdown(); } protected override void OnExit(ExitEventArgs e) { base.OnExit(e); if (SajetConnect.Type != MesType.none) { var stopResult = SajetConnect.SajetTransClose(); } Environment.Exit(0); } } }