방법: OnStart 메서드 디버깅
Windows 서비스의 인스턴스를 한 단계씩 실행하여 서비스의 생성자를 디버깅할 수 있습니다.서비스를 시작하고 디버거를 서비스 프로세스에 연결하여 Windows 서비스 자체를 디버깅할 수 있습니다.그러나 Windows 서비스의 OnStart 메서드를 디버깅하려면 몇 줄의 코드를 추가하여 서비스를 시뮬레이션해야 합니다.자세한 내용은 ServiceBase.OnStart를 참조하십시오.
OnStart 메서드의 문제를 디버깅하려면
콘솔 응용 프로그램과 같은 서비스의 시뮬레이션을 만들어서 문제가 발생한 위치를 확인합니다.
예를 들어, 다음과 같은 Visual C# Windows 서비스가 있다고 가정해 보십시오.
public class ManagedWindowsService : System.ServiceProcess.ServiceBase { // // designer and user generated methods and properties // public static int main(String[] args) { ServiceBase.Run( new ManagedWindowsService() ); } }
다음 코드 줄을 추가하여 OnStart 메서드를 디버깅합니다.
public static int main(String[] args) { (new ManagedWindowsService()).OnStart(); // allows easy debugging of OnStart() ServiceBase.Run( new ManagedWindowsService() ); }
서비스가 이 모드에서 실행되지 않지만 OnStart 메서드를 디버깅할 수 있으며 예상대로 작동하는지 확인할 수 있습니다.
자세한 내용은 Windows 서비스 응용 프로그램 디버깅을 참조하십시오.