Dienstneustart per IPS Einzeiler

Da der Dienstneustart mit den Toni Tools seit einiger Zeit mit den neuen IPS Versionen nicht mehr funktioniert und ich sowieso ungern von externen Modulen abhängig bin, habe ich nach einer Möglichkeit gesucht aus IPS heraus den Dienst neu zu starten. So kann ich auch gezielt auf evtl. Fehler reagieren.

Und so gehts ganz einfach:

  1. PsService.exe herunterladen ==>PsService
  2. Und diesen Einzeiler ausführen:

IPS_ExecuteEx(IPS_GetKernelDir().'/PsService.exe',' \\\Servername  -u Benutzername -p Passwort restart IPSServer',false,false,1);

Danke, wieder ein Tipp den ich gut gebrauchen kann :wink:
Was mich bei diesen Dingern allerings immer ein wenig stört ist die Angabe von Passwort und Benutzername. Da das dann auch als Klartext abgelegt wird ist das nicht ganz ungefährlich.
Könnte man das evtl. umgehen in dem man den IPS-Server-Dienst unter dem eigenen Benutzernamen laufen lässt?

:confused:grübel:confused:

Klasse Thomas!!

Besten Dank!

Das setzt aber voraus, dass der IPService noch arbeitet und reagiert. Problematisch wird es ja erst, wenn das nicht mehr der Fall ist. Da kommt man un einen externen Watchdog dann nicht herum.

Hallo,

das könnte erklären warum mein Backup mit Pulse den IPS.exe Prozess regelmäßig im Status „wird beendet“ hinterläßt und ich dann manuell eingreifen muss.

Also Danke für den Hinweis Thomas.

Gruß
Thorsten

Solange der PC an sich noch arbeitet könntest du die psservice.exe auch von einer Systemüberwachungssoftware ausführen lassen, wenn sie feststellt, dass IPS nicht mehr reagiert.

Gruß
Thorsten

Das setzt aber voraus, dass der IPService noch arbeitet und reagiert

Einen Watchdog ersetzt das natürlich nicht. Bei meiner M-Audio Delta 10 Lt hängt sich manchmal aus unerklärlichen Gründen die IPS Mediaplayerinstanz auf und wirft dann eine PHP Fehlermeldung. Diese kann ich ja in IPS auswerten und den Dienst automatisch neu starten lassen, damit habe ich wenigstens erst einmal ein workaround.

Hallo.

Und wie kann ich es lösen wenn der Dienstname aus mehr als einem Wort und Leerzeichen besteht? Möchte das nicht über eine externe Batchdatei machen müssen und umbenennen des Dienstes ist auch nicht wirklich eine Option.

Grüsse.

Reicht es nicht den Dienstnamen in Anführungszeichen zu setzen?

IPS_ExecuteEx(IPS_GetKernelDir().'/PsService.exe',' \\\Servername  -u Benutzername -p Passwort restart "IPS Server"',false,false,1);  

Nein, leider nicht. Hatte ich schon probiert und ergibt den Fehler

Warning: There were no token found for specified session: 1 in [Skripte allgemein\Dienst neu starten] on line 3

Hm…klassische Windows Befehle ?

net stop "IPS Server" & net start "IPS Server"

eingepackt in ein IPS_Execute ?

Hab es jetzt nicht getestet, sollte aber gehen…evtl. in eine Batch packen und diese aufrufen.

Wenn ich das aus IPS heraus direkt machen will haben wir da das identische Problem da beim Aufruf von IPS_ExecuteEx wieder der Dienstname mit Leerzeichen angegeben wird.

Ein Workaround wäre den Befehl in eine Batch zu verpacken und diese aufzurufen. Das wollte ich aber eigentlich vermeiden.

Hmmm…wenn ich mir die Fehlermeldung aus deinem vorherigen Post anschaue, würde ich eigentlich nicht auf die Anführungszeichen als Quelle setzen.

Hast Du mal probiert, die 1 am Ende des Aufrufs durch eine 0 zu ersetzen ?

Hallo zusammen,

die Namen von Diensten sind unter Windows immer ohne Leerzeichen.

Gruss
Michael

Dienst.jpg

Beim iRTrans Server wird der dort angegebene Name nicht akzeptiert sondern nur der mit Leerzeichen.