Gewusst wie: Debuggen der OnStart-Methode
Aktualisiert: November 2007
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
C++ |
Web Developer |
---|---|---|---|---|
Express |
Nur verwaltet |
|||
Standard |
Nur verwaltet |
|||
Pro und Team |
Nur verwaltet |
Tabellenlegende:
Vorhanden |
|
Nicht vorhanden |
|
Befehl oder Befehle, die standardmäßig ausgeblendet sind. |
Sie können den Konstruktor des Windows-Diensts debuggen, indem Sie in eine Instanz des Diensts springen. Den Windows-Dienst selbst können Sie debuggen, indem Sie ihn starten und dann den Debugger an den Dienstprozess anhängen. Um jedoch die OnStart-Methode eines Windows-Diensts zu debuggen, müssen Sie einige Codezeilen hinzufügen, mit denen der Dienst simuliert wird. Weitere Informationen finden Sie unter ServiceBase.OnStart.
So debuggen Sie die OnStart-Methode
Erstellen Sie eine Simulation des Diensts (z. B. eine Konsolenanwendung), um zu ermitteln, wo das Problem auftritt.
Nehmen wir beispielsweise an, der Visual C#-Windows-Dienst sieht wie folgt aus:
public class ManagedWindowsService : System.ServiceProcess.ServiceBase { // // designer and user generated methods and properties // public static int main(String[] args) { ServiceBase.Run( new ManagedWindowsService() ); } }
Fügen Sie folgende Codezeilen hinzu, um die OnStart-Methode zu debuggen:
public static int main(String[] args) { (new ManagedWindowsService()).OnStart(); // allows easy debugging of OnStart() ServiceBase.Run( new ManagedWindowsService() ); }
Der Dienst wird in diesem Modus nicht ausgeführt, jedoch können Sie die OnStart-Methode debuggen und sicherstellen, dass sie sich wie erwartet verhält.
Weitere Informationen finden Sie unter Debuggen von Windows-Dienstanwendungen.