EventLog를 검사하는 종료 이유를 얻을 수 있습니다.
Windows 서비스에 적응할 수있는 Windows Forms의 빠른 데모를 구성했습니다.
EventLog 구성 요소를 Form에 추가하고 올바르게 구성했습니다. 아래 스 니펫은 디자이너를 통해 설정 한 설정의 InitializeComponent()에서 생성 된 코드를 보여줍니다.
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);
}
}
가 필터링 적절한 EventIds를 확인하려면 이벤트 로그를 살펴 보자 : 이벤트 핸들러에
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);
, 당신은 다음과 같은 라인을 따라 뭔가를해야합니다.
컴파일러는 EventID에 대해 경고하고 InstanceId를 사용해야한다고 경고하지만 여기에서 수행 한 빠른 테스트에서 내 로그 파일에 기록하지 않았고 이미 충분한 정보를 가지고 있다고 생각합니다 당신을 궤도에 올려 놓습니다.