您可以检查事件日志的关闭原因.
我在Windows Forms上组装了一个快速演示,可以适应您的Windows服务.
我已经向表单添加了一个EventLog组件并正确配置它.下面的代码段显示了InitializeComponent()中为我通过设计器设置的设置生成的代码.
this.eventLog1.EnableRaisingEvents = true;
this.eventLog1.Log = "System";
this.eventLog1.Source = "USER32";
this.eventLog1.SynchronizingObject = this;
this.eventLog1.EntryWritten += new System.Diagnostics.EntryWrittenEventHandler(this.eventLog1_EntryWritten);
Run Code Online (Sandbox Code Playgroud)
在事件处理程序上,您将获得以下内容:
private void eventLog1_EntryWritten(object sender, System.Diagnostics.EntryWrittenEventArgs e)
{
EventLogEntry entry = e.Entry;
if (e.Entry.EventID == 1074)
{
File.AppendAllText(@"c:\message.txt", entry.Message);
}
}
Run Code Online (Sandbox Code Playgroud)
查看您的事件日志以查看要过滤的相应EventIds.
编译器会警告你关于不推荐使用EventID并告诉你应该使用InstanceId,但在我在这里做的快速测试中,它没有写入我的日志文件,我认为我们已经有足够的信息可以让你使用跟踪.
| 归档时间: |
|
| 查看次数: |
2379 次 |
| 最近记录: |