67 lines
2.1 KiB
C#
67 lines
2.1 KiB
C#
using AIProofread.Controls;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Windows.Interop;
|
|
|
|
namespace AIProofread
|
|
{
|
|
public class Logger
|
|
{
|
|
public static FormLogger LoggerForm;
|
|
//private static readonly string AppDataPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="msg"></param>
|
|
public static void Log(string tag,string message)
|
|
{
|
|
string time = DateTime.Now.ToString("HH:mm:ss");
|
|
|
|
// 如果日志窗口已经打开,则显示日志
|
|
if (LoggerForm != null && !LoggerForm.IsDisposed && LoggerForm.Visible)
|
|
{
|
|
LoggerForm.Log(time, tag, message);
|
|
}
|
|
string path = Config.APP_LOG_PATH + DateTime.Now.ToString("yyyy-MM-dd") + ".txt";
|
|
if (!Directory.Exists(Config.APP_LOG_PATH))
|
|
{
|
|
Directory.CreateDirectory(Config.APP_LOG_PATH);
|
|
}
|
|
try
|
|
{
|
|
StreamWriter streamWriter = File.AppendText(path);
|
|
streamWriter.WriteLine("***************************[" + tag + "]***************************");
|
|
streamWriter.WriteLine("消息:" + message);
|
|
streamWriter.WriteLine("时间:" + time);
|
|
streamWriter.WriteLine();
|
|
streamWriter.Flush();
|
|
streamWriter.Close();
|
|
streamWriter.Dispose();
|
|
}
|
|
catch (Exception) { }
|
|
}
|
|
public static void Log(string msg)
|
|
{
|
|
Log((Config.IS_WPS ? "WPS" : "WORD"), msg);
|
|
}
|
|
public static void Log(Exception e)
|
|
{
|
|
Log(e.Message + "\n" + e.StackTrace);
|
|
}
|
|
public static void Log(string tag, Exception e)
|
|
{
|
|
Log(tag,e.Message + "\n" + e.StackTrace);
|
|
}
|
|
|
|
public static void LogToWeb(string msg)
|
|
{
|
|
if (Config.RUN_IN_DEBUG)
|
|
{
|
|
Globals.ThisAddIn.SendMessageToWeb("DEBUG-LOG", msg);
|
|
}
|
|
}
|
|
}
|
|
}
|