应用程序级别未处理的异常不创建新文件

时间:2016-07-04 19:28:34

标签: wpf exception c#-4.0 error-handling

我的App.cs文件中有一些代码可以在发生崩溃时捕获未处理的异常。问题是,当我单步执行代码时,它读取就好像文件存在,但实际上没有创建新文件。我可能忽略了一些简单的东西,但我可以使用第二组(或更多))。这是我的方法。

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 个答案:

答案 0 :(得分:1)

文件夹/Source/CrashLogs/是否已存在?

也处理AppDomain.CurrentDomain.UnhandledException 更多信息here