문제

하나의 서버에서 작동하는 .NET Framework 1.1 Windows 서비스가 있지만 다른 서버에서는 OnStart 메소드가 호출되지 않습니다. OnStart 오버라이드의 첫 번째 줄로 추적 문이 있으며 실행되지 않습니다. 예외는 버리지 않고 Windows Service Control Manager는 서비스가 올바르게 시작되었다고 생각합니다.

OnStart 방법이 호출되는 것을 막을 수있는 아이디어가 있습니까?

편집 : 추적 출력에 대한 .config 설정은 다음과 같습니다.

<configuration>
    <system.diagnostics>
        <trace autoflush="true" indentsize="4">
            <listeners>
                <add name="LogFileWriter" type="System.Diagnostics.TextWriterTraceListener,System" 
                        initializeData="c:\interface.log" />
            </listeners>
        </trace>
    </system.diagnostics>
</configuration>
도움이 되었습니까?

해결책 3

이로 인해 단일 서버에서는 서비스 인스턴스의 생성자가 실행되는 것을 방지하는 데 매우 모호한 문제가되었습니다.

다른 팁

EventLogTrace 리스너에게 추적을 작성하는 경우 두 번째 컴퓨터의 서비스 계정에 이벤트 로그에 액세스 할 수있는 권한이 충분하지 않을 수 있습니다. 이 질문에 대한 내 대답을 참조하십시오.

Windows 서비스가 실행되지만 이벤트 로그는 작동하지 않습니다

OnStart 이벤트에서 이벤트가 발사되지 않음을 시사하는 다른 활동은 무엇입니까?

oninit가 호출되는 경우, 그것을 무시하고 직접 핸들러를 설정하십시오.

protected override void OnInit(EventArgs e) {
  this.Start += new System.EventHandler(OnStart);
  base.OnInit(e);
}

OnInit이 호출되지 않으면 AutoEventWireUp = "True"를 <%@ 페이지 섹션에 추가하면 도움이 될 수 있습니다.

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