lebowski23
Goto Top

Eigene exe und Fehler 1053 Dienst startet nicht ..

Hallo,
ich habe eine batch-script das ich in eine *.exe kompiliert habe (mit dem Tool 'Bat To Exe Converter'). Diese funktioniert auch einwandfrei. Das Ziel war, dass ich diese als service ausführen kann. Nun habe ich mit sc.exe die exe als service hinzugefügt. Will man diesen Starten, kommt aber die Fehlermeldung

Fehler 1053 Der Dienst antwortet nicht rechtzeitig auf die Start- oder Steuerungsanforderung


Woran liegt dieses, muss man beim erstellen einer exe die als Dienst eingerichtet ist etwas besonderes beachten?

Achso: das ganze unter Windwos XP Pro, SP3

Content-Key: 169492

Url: https://administrator.de/contentid/169492

Printed on: April 25, 2024 at 22:04 o'clock

Member: AndreasHoster
AndreasHoster Jul 11, 2011 at 13:05:48 (UTC)
Goto Top
Ja, muß man.
Für eine x-beliebige EXE als Dienst, gibts im Windows Ressource Kit http://www.microsoft.com/download/en/details.aspx?id=17657 (die 2003 Version tut auch für XP) das Tool srvany.exe.
Anleitung gibts unter http://support.microsoft.com/kb/137890 ist für Win NT, tut aber immer noch.
Member: jsysde
jsysde Jul 11, 2011 at 18:44:08 (UTC)
Goto Top
Woran liegt dieses, muss man beim erstellen einer exe die als Dienst eingerichtet ist etwas besonderes beachten?

Das kommt u.a. auch darauf an, was dieser "Dienst" denn macht, sprich: Wie sieht die zugrunde liegende Batchdatei aus?
Je nach dem unter welchem Account der Dienst startet, hat er (keinen) Zugriff auf Netzwerkressourcen; auch wird ein Dienst nichts mit gemappten Laufwerksbuchstaben anfangen können sondern muss stattdessen mit UNC-Pfaden arbeiten usw. Und es gibt noch einige Dinge mehr, die zu beachten sind - dazu wäre es wichtig, die Batch zu kennen.

Cheers,
jsysde
Member: Lebowski23
Lebowski23 Jul 11, 2011 at 19:24:09 (UTC)
Goto Top
Hallo und vielen Dank,

werde dann in morgen srvany ausprobieren.
Die batchdatei mach eigentlich nichts anderes als über net use einen UNC-Pfad "einzubinden" und ein Script auszuführen, das dort liegt (alles ohne laufwerksbuchstaben).

Die Batchdatei als eingeloggter User funktioniert, als Startupscript auch.

Habe für den Service die Abhängigkeiten (TCP ...) angegeben. Der läuft ja dann unter dem Systemkonto, hat er Berechtigungen für die Netzwerkressourcen?

Eine andere Sache noch, das Script als Task (beim Booten) funkioniert nicht (kein Zugriff auf UNC). Wird dies zu früh ausgeführt?

Vielen Dank,
Member: jsysde
jsysde Jul 11, 2011 at 20:57:37 (UTC)
Goto Top
[...]Der läuft ja dann unter dem Systemkonto, hat er Berechtigungen für die Netzwerkressourcen?[...]

Nö.

Cheers,
jsysde
Member: Lebowski23
Lebowski23 Jul 11, 2011 at 21:10:16 (UTC)
Goto Top
Dann glich mal die gegenfrage:

Muss ich dann wohl unter "Administrator" laufen lassen?
Member: AndreasHoster
AndreasHoster Jul 12, 2011 at 06:28:20 (UTC)
Goto Top
Nicht unbedingt.
Nur unter einem User, der für alles was Du tust die nötigen Rechte hat.
Das kann der Administrator sein, muß aber nicht.
Member: jsysde
jsysde Jul 12, 2011 at 16:44:56 (UTC)
Goto Top
Muss ich dann wohl unter "Administrator" laufen lassen?

Nö.

Das Lehrbuch sagt: Erstelle für Dienste _immer_ einen eigenen Benutzer, der nur genau so viele Rechte hat, wie er tatsächlich braucht. Diesem User gibt man dann die Berechtigung "Anmelden als Dienst" und trägt dessen Credentials in den Eigenschaften des Dienstes ein.

Cheers,
jsysde

EDIT:
Admin-Rechte sollte man tunlichst vermeiden...