2016-07-04 14 views
-1

クラッシュ時に未処理の例外をキャッチするために、App.csファイルに少しのコードがあります。問題は、コードをステップ実行すると、ファイルが存在するかのように読み込まれますが、実際には新しいファイルは作成されません。私はおそらく単純なものを見落としているかもしれませんが、2番目(またはそれ以上))の目を使うことができます。ここに私の方法です。アプリケーションレベル未処理の例外新しいファイルが作成されない

private void App_DispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e) 
{ 
    var contents = 
     string.Format(
      "HResult: {1}{0}" + "HelpLink: {2}{0}" + "Message: {3}{0}" + "Source:  {4}{0}" 
      + "StackTrace: {5}{0}" + "{0}", 
      Environment.NewLine, 
      e.Exception.HResult, 
      e.Exception.HelpLink, 
      e.Exception.Message, 
      e.Exception.Source, 
      e.Exception.StackTrace); 

    if (!File.Exists("/Source/CrashLogs/Exceptions.txt")) 
    { 
     File.WriteAllText("/Source/CrashLogs/Exceptions.txt", contents); 
    } 
    else 
    { 
     File.AppendAllText("/Source/CrashLogs/Exceptions.txt", contents); 
    } 

    e.Handled = true; 
} 

次に、ファイル名に現在の日付が含まれるようにこれを展開しますが、最初に実行したいと思います。

ありがとうございます!

答えて

1

は、フォルダ/Source/CrashLogs/が既に存在しますか?

ハンドルもAppDomain.CurrentDomain.UnhandledException 詳細here

+0

これは、プロジェクトフォルダ内に、ありません。あなたが投稿したリンクも見ていきます。ありがとう。 – user1971240