c# - error - 이벤트 로그 쓰기 오류



window system error code (1)

오류 메시지는 정확히 무엇이 잘못되었는지를 알려줍니다. IvrService 아닌 Application Log에 등록 된 이벤트 소스 IvrService가 있습니다. System.Diagnostics.EventLog.SourceExists 는 특정 로그가 아니라 소스가 있는지 확인합니다.

내 생각 엔 원래 응용 프로그램 로그에이 파일을 등록한 다음 나중에 IvrServiceLog 에 쓰기 위해 변경했습니다.

개발 컴퓨터를 정리하려면 다음 코드를 실행하면됩니다.

System.Diagnostics.EventLog.DeleteEventSource("IvrService");

그것은 간단합니다, 나는 이벤트 로그에 뭔가를 쓰고 싶다.

protected override void OnStop()
    {
        // TODO: Add code here to perform any tear-down necessary to stop your service.
        if (!System.Diagnostics.EventLog.SourceExists("IvrService"))
        {
            System.Diagnostics.EventLog.CreateEventSource(
                "IvrService", "IvrServiceLog");
        }
        EventLog eventLog1 = new System.Diagnostics.EventLog();
        eventLog1.Source = "IvrService";
        eventLog1.Log = "IvrServiceLog";
        try
        {
            eventLog1.WriteEntry("Successfully "+State.Stopped.ToString());
            IvrApplication.StopImmediate();
        }
        catch (Exception ex)
        {
           // eventLog1.WriteEntry(ex.Message);
        }
    }

예외는 다음과 같습니다.

   Failed to stop service. System.ArgumentException: The source 'IvrService' is not   registered in log 'IvrServiceLog'. (It is registered in log 'Application'.) " The Source   and Log properties must be matched, or you may set Log to the empty string, and it will automatically be matched to the Source property.
   at System.Diagnostics.EventLogInternal.VerifyAndCreateSource(String sourceName, String currentMachineName)
   at System.Diagnostics.EventLogInternal.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData)
   at System.Diagnostics.EventLog.WriteEntry(String message)




.net