【问题标题】:Generating a LOG file for windows application [closed]为 Windows 应用程序生成 LOG 文件 [关闭]
【发布时间】:2016-06-12 09:20:59
【问题描述】:

我有一个 Windows 应用程序,其中有一些功能,例如查找和替换、更改日期格式等。

通过生成 LOG 文件,我想在我的 Windows 应用程序中跟踪对文件所做的修改。

谁能帮我实现这个目标?

【问题讨论】:

  • 真正的问题是什么?如何写入日志文件?尝试使用许多日志库之一,如 NLog、log4net 等。如何跟踪应用程序中的命令所做的更改?当命令启动和完成时写入日志。还有什么?请提出具体问题
  • 试试看这里:How to do logging in c#?
  • 我想在我的应用程序中跟踪文件的变化。

标签: c#


【解决方案1】:

如果您想记录应用程序执行的操作,您可以将它们写入外部文件。

private void Log(string text, bool LineBreak)
    {
        try
        {
            if (LineBreak)
            {
                File.AppendAllText("LogFile.txt", System.Environment.NewLine + System.Environment.NewLine);
            }
            File.AppendAllText("LogFile.txt", System.Environment.NewLine + DateTime.Now + ":- " + text);
        }
        catch
        {
        }
    }

像这样记录异常:

private void LogException(Exception ex)
    {
        try
        {
            File.AppendAllText("LogFile.txt", System.Environment.NewLine + DateTime.Now + ":- Main Exception:");
            File.AppendAllText("LogFile.txt", System.Environment.NewLine + ex.Message);
            File.AppendAllText("LogFile.txt", System.Environment.NewLine + ex.StackTrace);

            File.AppendAllText("LogFile.txt", System.Environment.NewLine + System.Environment.NewLine + "Inner Exception:");
            File.AppendAllText("LogFile.txt", System.Environment.NewLine + ex.InnerException.Message);
            File.AppendAllText("LogFile.txt", System.Environment.NewLine + ex.InnerException.StackTrace);
        }
        catch
        {
        }
    }

【讨论】:

  • 你能告诉我ServiceLogFilePath需要添加什么程序集吗?
  • @user1191818 "ServiceLogFilePath" 是一个包含日志文件路径的变量。请参阅我编辑了代码spinet以进行澄清。
【解决方案2】:

可以通过

对跟踪输出进行一些记录
Trace.WriteLine("Some message");

并连接一个跟踪监听器,它实现了

TraceListener

或使用预定义的侦听器。综合教程可以在MSDN找到。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-06
    • 1970-01-01
    相关资源
    最近更新 更多