AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi bekomme den service nicht zum laufen...
Thema durchsuchen
Ansicht
Themen-Optionen

bekomme den service nicht zum laufen...

Ein Thema von sunshineh · begonnen am 22. Okt 2008 · letzter Beitrag vom 23. Okt 2008
 
nahpets
(Gast)

n/a Beiträge
 
#10

Re: bekomme den service nicht zum laufen...

  Alt 23. Okt 2008, 10:34
liegt der Dienst auch unter c:\test?

mache mal vom cmd aus folgendes:
Code:
D:\Delphi7\Projects>project1 /install

D:\Delphi7\Projects>net start Testservice
TestService wird gestartet.
TestService wurde erfolgreich gestartet.

D:\Delphi7\Projects>net stop Testservice
TestService wird beendet...
TestService wurde erfolgreich beendet.

D:\Delphi7\Projects>project1 /uninstall

D:\Delphi7\Projects>
sieht das bei Dir genauso aus?

Die Ausgabedatei muss jetzt so aussehen:
Code:
23.10.2008 11:16:37 Service gestartet
23.10.2008 11:16:55 OnExecute
Wenn es Rechte sein könnten:
Was für Rechte hast Du auf dem Rechner?

Geh mal in die Systemsteuerung zu den Diensten und rufe die Eigenschaften des Dienstes auf. Dort gibt es den Reiter Anmelden. Gib' dort bei Dieses Konto ein Konto an, dass garantiert alle Rechte hat (also z. B. das lokale Adminkonto des Rechners). Dienst stoppen und Dienst starten, wenn's dann geht, ist es ein Rechteproblem.

Wenn's nicht geht, poste bitte den Quelltext so, wie er jetzt ist, dann werd' ich es nochmal versuchen.
Wenn irgendmöglich, verabschiede Dich bei der Protokollierung von der Stringliste. Schreibe jede Zeile mit WriteLn(f,'text') in die Logdatei. Du bekommst im Dienst einfach nicht mit, wenn bei der Arbeit mit der Stringliste eine Exception auftritt. Ich weiß nicht, wie ein Dienst intern abläuft und ob die Stringliste bei jedem Aufruf von ServiceExecute initialisiert ist, sprich, ob ein einmaliges Create für die gesamte Laufzeit des Dienstes ausreicht. Wenn nicht, kracht das hier mit ziemlicher Sicherheit und ServiceExecute wird mit 'ner Exception abgebrochen. Das bekommst Du von außen nicht mit.
Versuch' die Protokollierung erstmal nur so (mit fest verdrahtetem Dateiname, die steht dann halt im Verzeichnis der Exe):
Delphi-Quellcode:
AssignFile(f,'LogFileName');
If FileExists('LogFileName') Then Append(f) Else ReWrite(f);
WriteLn(f,DateToStr(Now) + ' ' + TimeToStr(Now) + ' ' + 'Steht hier jetzt auch wirklich der Text in der Datei');
CloseFile(f);
Auch wenn hier andauernd geprüft wird, ob eine Datei schon existiert und sie andauernd auf und zu gemacht wird. Zuerst muss 'ne Billigvariante laufen, bevor es auch was komplizierter werden darf.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz