Debuggen einer Dienstanwendung
Ein Dienst, auch als Windows-Dienst bezeichnet, ist ein Benutzermodusprozess, der von Windows ohne menschliche Interaktion gestartet werden soll. Sie wird automatisch beim Systemstart oder von einer Anwendung gestartet, die die in der Win32-API enthaltenen Dienstfunktionen verwendet. Ein Dienst kann auch von einem menschlichen Benutzer über das Dienst-Systemsteuerungs-Hilfsprogramm gestartet werden. Jeder Dienst muss den Schnittstellenregeln des Dienststeuerungs-Managers (SCM) entsprechen.
Jeder Dienst besteht aus drei Elementen: einer Dienstanwendung, einem Dienststeuerungsprogramm und dem Dienststeuerungs-Manager selbst. Obwohl eine Dienstanwendung manchmal (fälschlicherweise) als "Dienst" bezeichnet wird, ist sie tatsächlich eine der drei Komponenten, aus denen ein Dienst besteht. Die Dienstanwendung kann fast jede Art von Benutzermoduscode enthalten. Das Dienststeuerungsprogramm steuert, wann die Dienstanwendung gestartet und beendet wird. Der Dienststeuerungs-Manager ist Teil von Windows.
In den folgenden Abschnitten wird das Debuggen einer Dienstanwendung beschrieben:
Vorbereiten des Debuggens der Dienstanwendung
Automatisches Debuggen der Dienstanwendung
Manuelles Debuggen der Dienstanwendung
Eine Übersicht über Dienste, Dienstanwendungen und den Dienststeuerungs-Manager finden Sie unter Microsoft Windows Internals: Microsoft Windows Server 2003, Windows XP und Windows 2000 von David A. Solomon und Mark E. Russinovich (4. Edition, Microsoft Press, 2005).