Einzelnen Beitrag anzeigen

Jakson

Registriert seit: 10. Mär 2006
34 Beiträge
 
#1

Warten bis Debugger verbunden ist

  Alt 18. Dez 2009, 11:15
Keine Ahnung wo das am besten hin gehört?

Mein Problem bestand darin das ich einen Fehler beim starten eines Dienstes hatte.

Da Dienste ja nicht von der IDE gestartet werden sondern von Windows lässt sich der auch nur mit "Start/Mit Prozess verbinden..." debugen.

Nur wartet der Dienst halt nicht bis ich verbunden bin sondern wirft gleich die Fehlermeldung aus.

Nach einigem herum suchen und probieren hat sich jetzt dieser Zweizeiler gebildet den ich euch nicht vorenthalten möchte, da er genau das verlangte macht.

Die Funktion wartet an der Stelle bis ein Debugger sich verbunden hat und setzt dann das Programm fort.
Mit einem Breakpoint danach lässt sich das ganze dann komfortabel debugen.
Allerdings muss man immer noch recht schnell sein damit die 30sec Timeout beim Dienst starten nicht ablaufen.

Delphi-Quellcode:
procedure WaitForDebug;
begin
  while DebugHook = 0 do
    Sleep(1);
end;
Jakson
  Mit Zitat antworten Zitat