문제

디버그 정보를 작성하기 위해 이벤트 로그를 사용하려고 노력하고 있으며 작동 할 수 없습니다. 이벤트 소스를 찾을 수 없다는 것에 대해 불평합니다. OS에 무언가를 설치해야합니까?

도움이 되었습니까?

해결책

여기에 응용 프로그램 중 하나에서 수정 한 코드가 있습니다. 이것은 창조로 시작하는 데 도움이 될 수 있습니다.

System.Diagnostics.EventLog eventLog1 = new System.Diagnostics.EventLog();
string eventLogName = "StackOverFlowEventName";
string eventLogSource = "StackOverFlowWebsite";

//This code HERE will create the Event for you
if (!System.Diagnostics.EventLog.SourceExists(eventLogSource))
{
    System.Diagnostics.EventLog.CreateEventSource(eventLogSource, eventLogName);
}

eventLog1.Source = eventLogSource;
eventLog1.Log = eventLogName;
eventLog1.WriteEntry("This is a test");

다른 팁

현재 프로젝트에서 어떤 코드를 사용하고 있습니까? 현재이 줄을 사용하여 이벤트 로그에 쓰고 있습니다.

System.Diagnostics.EventLog.WriteEntry(assemblyName, "Error stuff", System.Diagnostics.EventLogEntryType.Error);

그래도 조심하면 로그 파일이 가득 찬 경우 예외가 발생합니다.

또한 레지스트리에서 직접 이동하여 작동하는 데 필요한 값을 추가하거나 생성하는 EXE를 실행할 때 EventLog 항목을 생성하는 설치 업체 클래스 만 포함하는 솔루션에 프로젝트를 추가 할 수 있습니다.

MSDN 링크
InstallerClass 링크

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top