Services-Anwendungen debuggen

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Service-Anwendungen

Sie können Service-Anwendungen debuggen, indem Sie eine Verbindung zum Service-Anwendungs-Prozess herstellen. (Das bedeutet, Sie starten zuerst den Service und verbinden ihn dann mit dem Debugger.) Um eine Verbindung mit dem Prozess der Service-Anwendung herzustellen, wählen Sie Start > Mit Prozess verbinden und in dem angezeigten Dialogfeld die betreffende Service-Anwendung.

In einigen Fällen schlägt dieser Ansatz aufgrund unzureichender Berechtigungen fehl. Falls das geschieht, ermöglichen Sie mithilfe des Dienstkontroll-Managers die Ausführung Ihrer Service-Anwendung im Debugger:

So testen Sie eine Service-Anwendung im Debugger:

  1. Erzeugen Sie zuerst den Schlüssel Image File Execution Options an der folgenden Position der Systemregistrierung: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
  2. Legen Sie einen Unterschlüssel mit demselben Namen wie Ihr Service an (beispielsweise MYSERV.EXE). Diesem Unterschlüssel geben Sie den Wert Debugger vom Typ REG_SZ. Verwenden Sie als String-Wert den vollständigen Pfad zu bds.exe
  3. Wählen Sie im Applet Services Control Panel Ihren Service aus, klicken Sie auf Startup, und markieren Sie das Kontrollkästchen Allow Service to Interact with Desktop.

Auf Systemen mit Windows NT können Sie noch einen weiteren Ansatz für das Debugging von Service-Anwendungen nutzen. Diese Methode kann jedoch kompliziert sein, weil sie innerhalb von sehr kurzen Zeitintervallen erfolgen muss:

Für Windows NT:

  1. Starten Sie zunächst die Anwendung im Debugger. Warten Sie ein paar Sekunden, bis sie fertig geladen ist.
  2. Starten Sie schnell den Service von der Systemsteuerung oder von der Befehlszeile aus: start MyServ

Sie müssen den Service schnell starten (innerhalb von 15 bis 30 Sekunden nach dem Starten der Anwendung), weil die Anwendung beendet wird, wenn kein Service gestartet wurde.

Siehe auch