我的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;
}
我接下来将其展开,以便文件名包含当前日期,但我想首先让它运行。
谢谢!
答案 0 :(得分:1)
文件夹/Source/CrashLogs/
是否已存在?
也处理AppDomain.CurrentDomain.UnhandledException
更多信息here