写入事件日志Windows计划任务

时间:2009-08-18 14:27:35

标签: .net console-application event-log

我有一个控制台应用程序,它将运行一个计划任务,而我想要做的是将它写入catch块中的事件日志。我尝试过使用

EventLog.WriteEntry("My App Name","Error Message - " ex.ToString() );

但由于某种原因,它没有写错误。 我做错了吗?

由于

3 个答案:

答案 0 :(得分:2)

此代码来自MSDN网站的C#,希望对您有帮助。

using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    public static void Main(){

        // Create the source, if it does not already exist.
        if(!EventLog.SourceExists("MySource")){
            EventLog.CreateEventSource("MySource", "MyNewLog");
            Console.WriteLine("CreatingEventSource");
        }

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog();
        myLog.Source = "MySource";

        // Write an informational entry to the event log.    
        myLog.WriteEntry("Writing to event log.");

    }
}

答案 1 :(得分:1)

您需要确保事件源存在,例如:

if (!EventLog.SourceExists("MySource"))
    EventLog.CreateEventSource("MySource","Application");

请参阅http://support.microsoft.com/kb/307024

答案 2 :(得分:0)

有一点需要注意的是,调用EventLog.CreateEventSource时有时会有一点延迟,因此在创建后立即尝试访问创建的EventSource时应注意这一点。