public void Report(CrashReport report) { var reportText = report.Serialize(); try { var dir = info.GetTemp(REPORT_DIR); if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } var fn_tt = info.GetTemp(REPORT_DIR + "crash_tt.fpl"); if (info.Timetable != null) { new Shared.Filetypes.XMLExport().Export(info.Timetable, fn_tt, info); } else if (File.Exists(fn_tt)) { File.Delete(fn_tt); } var fn_report = info.GetTemp(REPORT_DIR + "crash_report.xml"); File.WriteAllText(fn_report, reportText); var fn_fileinfo = info.GetTemp(CRASH_DIR + "crash.file"); File.WriteAllText(fn_fileinfo, info.FileState.FileName); var fn_crash = info.GetTemp(CRASH_DIR + "crash.flag"); File.WriteAllText(fn_crash, "1"); MessageBox.Show("Es ist ein unerwarteter Fehler in FPLedit aufgetreten." + Environment.NewLine + Environment.NewLine + "FPLedit wird neu gestartet. Möglicherweise ist eine Wiederherstellung möglich.", MessageBoxType.Error); } catch { MessageBox.Show("Es ist ein unerwarteter Fehler in FPLedit aufgetreten. Es konnten keine weiteren Informationen gespeichert werden. FPLedit wird neu gestartet."); } }
public void Report(CrashReport report) { try { var reportText = report.Serialize(); var dir = pluginInterface.GetTemp(REPORT_DIR); if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } var fnTimetable = pluginInterface.GetTemp(REPORT_DIR + "crash_tt.fpl"); if (pluginInterface.Timetable != null) { new Shared.Filetypes.XMLExport().SafeExport(pluginInterface.Timetable, fnTimetable, pluginInterface); } else if (File.Exists(fnTimetable)) { File.Delete(fnTimetable); } var fnReport = pluginInterface.GetTemp(REPORT_DIR + "crash_report.xml"); File.WriteAllText(fnReport, reportText); var fnCrashFileNameFile = pluginInterface.GetTemp(CRASH_DIR + "crash.file"); File.WriteAllText(fnCrashFileNameFile, pluginInterface.FileState.FileName); var fnCrashFlag = pluginInterface.GetTemp(CRASH_DIR + "crash.flag"); File.WriteAllText(fnCrashFlag, "1"); MessageBox.Show(T._("Es ist ein unerwarteter Fehler in FPLedit aufgetreten.\n\n" + "FPLedit wird neu gestartet. Möglicherweise ist eine Wiederherstellung möglich."), "FPLedit", MessageBoxType.Error); } catch (Exception ex) { MessageBox.Show(T._("Es ist ein unerwarteter Fehler in FPLedit aufgetreten. Es konnten keine weiteren Informationen gespeichert werden. FPLedit wird neu gestartet.\n\n\n{0}", ex.Message), "FPLedit"); } }