名前空間Hearthbuddy
{
//トークンは:RID 0x02000022:34の
パブリッククラスのアプリを起動する:System.Windows.Applicationを
// Hearthbuddy.App // トークン:0x0600012B RID:299 RVAを:0x00086C08ファイルオフセット:0x00084E08 保護された オーバーライド ボイドOnStartup(StartupEventArgs E) { 文字列のテキスト= "" ; 試す { この.method_1を(); } キャッチ(例外例外) { App.ilog_0.Error(「例外が発生した」、例外)。 試す { この.method_2を(); } キャッチ(例外exception2) { App.ilog_0.Error(「例外が発生しました」)、exception2を。 Logger.OpenLogFile(); Application.Current.Shutdown(); 返します。 } } してみてください { (App.ilog_0.Infoを" 今すぐJitProfilesを設定... " ); ストリングテキスト2 = Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly()の場所)、" JitProfiles " )。 もし(!Directory.Exists(テキスト2)) { Directory.CreateDirectory(テキスト2)。 } ProfileOptimization.SetProfileRoot(テキスト2)。 ProfileOptimization.StartProfile(" JitProfile.jpf " ); App.ilog_0.Info(" 成功しJitProfilesセットアップ!" ); } キャッチ(例外exception3) { App.ilog_0.Error(" 例外の発生" 、exception3)。 } 基部 .Dispatcher.UnhandledException + = この.method_4。 AppDomain.CurrentDomain.UnhandledException + = この.method_3。 Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture; App.ilog_0.Info(「今すぐ開始前の作業を開始します。」); してみてください { App.ilog_0.Info(" 今すぐチェック前提条件を... " ); この.method_0(); App.ilog_0.Info(" 完全な前提条件チェック!" ); } キャッチ(例外のarg) { App.ilog_0.ErrorFormat(" {0} " 、引数)。 Logger.OpenLogFile(); ベース .Shutdown(1)。 返します。 } してみてください { 場合(!File.Exists(" DONOTDELETE.bin " )) { App.ilog_0.Error("。ファイルは[DONOTDELETE.bin]は存在しませんHearthbuddyを再インストールしてください" ); Logger.OpenLogFile(); ベース .Shutdown(1 )。 返します。 } もし(!Class7.smethod_4(アウトテキスト)) { App.ilog_0.Error(「GetImageFileNameに失敗しました。 " ); Logger.OpenLogFile(); 塩基 .Shutdown(1 ); 返す; } 場合(新しいウリ(テキスト).IsUnc) { App.ilog_0.Error(" HearthbuddyがもはやUNCパスから実行することができないにHearthbuddyをインストールしてください。現在のPC。" ); Logger.OpenLogFile(); 塩基 .Shutdown(1 ); リターン; } File.ReadAllBytes(テキスト); File.ReadAllBytes(" DONOTDELETE.bin 」)。 App.smethod_0(テキスト); } キャッチ(例外ARG2) { App.ilog_0.ErrorFormat(" {0} " 、ARG2)。 Logger.OpenLogFile(); ベース .Shutdown(1 )。 返します。 } 試みる { Class6 @class = 新しい Class7()method_0(" Hearthbuddy " )。 スイッチ(@ class.Enum1_0) { ケースEnum1.Success: CodeCompiler.smethod_0(@ class.String_0)。 破ります; 場合Enum1.Relaunch: もし(CommandLine.Arguments.Exists(" noautolaunch " )) { App.ilog_0.Info(" 今手動リニューアルため出ます" )。 ベース .Shutdown(1 )。 } 他 { App.ilog_0.Infoは(" 今リニューアル。" )。 Process.Start(@ class.String_1、文字列 .Join(" "、Environment.GetCommandLineArgsは()。スキップ(1).Select(新しいのFunc <文字列、文字列 > (App.Class11.Instance9.method_1))))。 ベース .Shutdown(1 )。 } を返します。 ケースEnum1.Error: App.ilog_0.ErrorFormat(" エラーが発生しました:{0} " 、class.String_2 @)。 Logger.OpenLogFile(); ベース .Shutdown(1 )。 返します。 } } キャッチ(例外ARG3) { App.ilog_0.ErrorFormat("起動時に私たち自身の名前を変更できませんでした:{0}"ARG3); Logger.OpenLogFile(); ベース .Shutdown(1 ); を返す; } してみてください { もし!(App.smethod_1(テキスト)) { App.ilog_0.ErrorFormat(" プロセスを交換しようとしたときにエラーが発生しました。"Array.Empty < オブジェクト > ()); Logger.OpenLogFile(); 塩基 .Shutdown(1 ); リターン; } } キャッチ(例外ARG4) { App.ilog_0.ErrorFormat(" 起動時に私たち自身を置き換えることができませんでした:{0} " 、ARG4)。 Logger.OpenLogFile(); ベース .Shutdown(1 )。 返します。 } App.ilog_0.Info(「プリスタートタスクが正常に完了しました。」); ベース.OnStartup(E); }