OSDN Git Service

#23670 アプリケーションでキャッチされない例外をキャッチして、例外の詳細をログに出力するよう修正。
[dtxmania/dtxmania.git] / DTXManiaプロジェクト / コード / 全体 / Program.cs
index af80d8c..085cfda 100644 (file)
@@ -51,11 +51,26 @@ namespace DTXMania
                                if( !tDLLの存在チェック( CDTXMania.D3DXDLL, CDTXMania.D3DXDLL + " が存在しません。" + newLine + "Direct Regist フォルダの DXSETUP.exe を実行し、" + newLine + "必要な DirectX ランタイムをインストールしてください。" ) ) flag = true;\r
                                if( !flag )\r
                                {\r
-                                       using( var mania = new CDTXMania() )\r
-                                               mania.Run();\r
+                                       // BEGIN #23670 2010.11.13 from: キャッチされない例外は放出せずに、ログに詳細を出力する。\r
+                                       try\r
+                                       {\r
+                                               int[] n = new int[ 2 ] { 0, 0 };\r
+                                               n[ 3 ] = 10;\r
 \r
-                                       Trace.WriteLine( "" );\r
-                                       Trace.WriteLine( "遊んでくれてありがとう!" );\r
+                                               using( var mania = new CDTXMania() )\r
+                                                       mania.Run();\r
+\r
+                                               Trace.WriteLine( "" );\r
+                                               Trace.WriteLine( "遊んでくれてありがとう!" );\r
+                                       }\r
+                                       catch( Exception e )\r
+                                       {\r
+                                               Trace.WriteLine( "" );\r
+                                               Trace.Write( e.ToString() );\r
+                                               Trace.WriteLine( "" );\r
+                                               Trace.WriteLine( "エラーだゴメン!(涙" );\r
+                                       }\r
+                                       // END #23670 2010.11.13 from\r
                                        \r
                                        if( Trace.Listeners.Count > 1 )\r
                                                Trace.Listeners.RemoveAt( 1 );\r