public static void LogException(Exception e, string extMsg, bool showMsgBox) { try { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.AppendFormat("应用程序出现了异常:\r\n{0}\r\n", e.Message); stringBuilder.AppendFormat("\r\n 额外信息: {0}", extMsg); if (null != e) { if (e.InnerException != null) { stringBuilder.AppendFormat("\r\n {0}", e.InnerException.Message); } stringBuilder.AppendFormat("\r\n {0}", e.StackTrace); } //记录异常日志文件 //LogManager.WriteException(stringBuilder.ToString()); if (showMsgBox) { //弹出异常日志窗口 System.Console.WriteLine(stringBuilder.ToString()); } } catch (Exception ex) { DebugMod.LogException(ex); } }
/// <summary> /// 格式化堆栈信息 /// </summary> /// <param name="msg"></param> /// <returns></returns> public static void LogFormatStack(System.Diagnostics.StackTrace stackTrace, string extMsg) { try { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.AppendFormat("应用程序出现了对象锁定超时错误:\r\n"); stringBuilder.AppendFormat("\r\n 额外信息: {0}", extMsg); stringBuilder.AppendFormat("\r\n {0}", stackTrace.ToString()); //记录异常日志文件 //LogManager.WriteException(stringBuilder.ToString()); } catch (Exception e) { DebugMod.LogException(e); } }