IPS_ExecuteEX: no token found for specified session

Hi in die Runde,

ich habe derzeit das Problem, dass beim Aufruf einer Batchdatei von IPS eine fehlermeldung generiert wird.

die betreffende Befehlszeile lautet:

IPS_ExecuteEx("C:\Program Files\IP-Symcon\MePo_shutdown.bat", "", false, false, 1);

die Fehlermeldung der IPS-Konsole:
Warning: There were no token found for specified session: 1 in [Haussteuerung\Sensoren_Aktoren\Wohnzimmer\TV MediaPortal\MePo ShutDown] on line 5

Nun gibt es im Forum schon einige Beiträge zu diesem Thema aber irgendwie hilft mir das nicht weiter.

Vorgeschichte:
das Script lief vor ein paar Tagen einwandfrei (mit Parameter „1“). Ich habe dann aber am Benutzerkonto (am Server auf dem IPS läuft) rumgeschraubt, musste das Admin-Konto ( ein Domänen-Userkonto welches lokal der Admingruppe hinzugefügt wurde) löschen und neu anlegen. Ich bin nicht sicher ob das Versagen des Scripts zeitlich zur Änderung des Userkontos passt, aber kann das damit zusammen hängen?

IPS läuft auf einem virtuellen Server 2008R2, die Maschine die remote per Batch runtergefahren werden soll läuft auf WIN7. Alle Rechner sind Mitglied einer Domäne.
die IPS-Version ist die 2.3 Beta #1821

Ergänzung: der IPS-Dienst nutzt das lokale Systemkonto
Ergänzung II: hab jetzt probehalber die IPS-Version 2.3 #1799 installiert, gleiches Verhalten…

Versuch’s mal mit 0 statt 1, ich hatte etwas ähnliches.

Adrian

ups, hab ich vergessen zu erwähnen: habe 0-5 durchprobiert, alles erzeugt den selben Fehler
:confused:

Wirf den Task-Manager mal an und guck einfach, welche ID deine Aktive Session hat… Diese Nummer geht dann auch in IPS :slight_smile:

paresy

Treffer!
es ist die 6!
Danke für die schnelle Hilfe :slight_smile:

Hallo,

ich schon wieder!
Mirt dämmert gerade, dass der Befehl IPS_ExecuteEx nur dann funktioniert, wenn ein User an der Maschine angemeldet ist (und ich hab mich gewundert warum das Script ab und zu nicht lief).
Da IPS bei mir auf einem virtuellen Server läuft und ich ungern den Server mit permanent angemeldetem User laufen lassen möchte: gibt es eine Möglichkeit, den Befehl auch ohne angemeldeten User anwenden zu können?

Hi in die Runde,

kleines Update meinerseits: ich habe als „Workaround“ die ToniTools eingesetzt und fahre den Remote-PC nun mit folgendem Befehl herunter (das gleiche sollte die auf dem IPS-Server aufgerufene shutdown.bat machen):


$Result = TT_RunFile("192.168.70.103", "C:\Windows\System32\shutdown.exe", "-s");

Zumindest funktioniert dies nach ersten Tests so wie gewünscht, d.h. unabhängig von einer Useranmeldung am IPS-Server.

Seid dem Umstieg auf Windows 8 geht bei mir keine IPS-ExecuteEx-Befehl mehr. Überall bekomme ich diese Fehlermeldung

Warning:  There were no token found for specified session: 4392 in C:\IP-Symcon\scripts\40634.ips.php on line 3
IPS_ExecuteEx("C:\Program Files (x86)\Winamp\winamp.exe","",false,false,1); //Winamp starten

Session-Id wird mir für Winamp die 4392 angezeigt. Allerdings auch damit keine Besserung

Also ich habe jetzt noch mal weitergesucht und in einem anderen Thread den Hinweis gefunden das IPS als Systemdienst ausgeführt werden muss bzw. ich angemeldet sein muss. Ich habe jetzt einfach mal einen Screenshot von meinem Taskmanager angehängt. Vielleicht kann einer hierzu was sagen ob IPS bei mir richtig gestartet wird:

Ach ja ich setze IPS 2.4 ein und Windows 8.

taskmanager.png

Der Reiter „Benutzer“ ist relevant und dort dann die Kennung entnehmen.

paresy

Sicher mit dem Reiter? Sehe nix.

Bild1 (Small).jpg

Und ich soll jetzt nach jedem Neustart erstmal meine Skripte anpassen? Das ist doch blöde :frowning:

Ne. Nur sicherstellen, dass du dich lokal nach einen Neustart zuerst anmeldest.

paresy