Einzelnen Beitrag anzeigen

Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#5

AW: Console oder Dienst

  Alt 15. Jun 2010, 23:27
Du kannst den Dienstcode in einer Konsole ausführen lassen. Dazu einfach direkt den Code im Hauptprogramm aufrufen. Du willst ja Compilerdirektiven verwenden, dann kannst du mit IFDEF usw das machen.
Zudem kannst du in Delphi 200x Kopien der Einstellungen im Projektmanager anfertigen und dort dann die Compilerdirektive verwenden.
Da gibt es z.B. Debug und Release und du könntest noch Debug Console und Release Console hinzufügen und dort die notwendige Compilerdirektive in den Einstellungen setzen.

Natürlich kannst du keine Dienstspezifischenaufrufe machen, z.b. den Servicemanager (Stop, Start, Pause, Parameter).

Delphi-Quellcode:
{$IFNDEF CMD}  
      SvcMgr.Application.Initialize;
      SvcMgr.Application.CreateForm(...);
      SvcMgr.Application.Run;
  {$ELSE}
      SV := TServiceThread.Create;
      Sv.DoExecute(); //ruft intern Execute auf, da es nicht sichtbar ist
  {$ENDIF}
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat