NEWS
[gelöst] Exec Befehl funktioniert nicht mehr
-
@ben1983 sagte in Exec Befehl funktioniert nicht mehr:
@bananajoe said in Exec Befehl funktioniert nicht mehr:
cmd.exe /c echo C:\BatFiles\CopyTest.bat >nureintest.txt
Er hat die Datei direkt im ioBroker Verzeichnis angelegt
Und was steht drin?
Das erstellen der Datei ist schon mal ein Beweis das es überhaupt funktioniert -
@bananajoe ich habe es mit doppelten Backslash eingetragen und dann steht das drin
C:\BatFiles\CopyTest.bat
Aber er ruft diese datei nicht auf. / Bzw. wenn ich die datei eigenhändig anklicke geht es, aber aus dem skript heraus nicht.
-
@ben1983
lass ihn mal (hinter cmd.exe /c ) statt des echo Befehls folgendes ausführen:whoami
wieder mit Umleitung in die Textdatei
-
@bananajoe said in Exec Befehl funktioniert nicht mehr:
whoami
ergebnis:{'killed':false,'code':1,'signal':null,'cmd':'cmd.exe /c whoami C:\\BatFiles\\CopyTest.bat >nureintest.txt'}
-
cmd.exe /c whoami >testwhoami.txt
whoami sollte ausgeben als welcher Benutzer das Skript ausgeführt wird.
-
@ben1983 Ohne den Befehl meiner Datei steht folgendes in der Datei:
nt service\iobroker(smarthome)
-
@ben1983 sagte in Exec Befehl funktioniert nicht mehr:
@ben1983 Ohne den Befehl meiner Datei steht folgendes in der Datei:
nt service\iobroker(smarthome)
so, und dieser Benutzer führt deine Batchdatei aus.
Hat der genügend Rechte dafür? Und auch die Rechte alles zu tun was in der Batch steht? -
Du könntest auch hinter deinen Batchbefehl auch so eine Umleitung in eine Textdatei setzen, dann könntest du eventuelle Fehlermeldungen lesen
-
@bananajoe Es gibt aber keinen Benutzer Service. ??? Es gibt an diesem Rechner nur einen User und das bin ich.
und ich bin als Admin deklariert. -
@ben1983 Bist du da eigentlich auf einem Linux oder Windows unterwegs?
-
@thomas-braun WINDOWS würde ich anhand der Pfadangaben usw. mal vermuten.
-
@ben1983 sagte in Exec Befehl funktioniert nicht mehr:
@bananajoe Es gibt aber keinen Benutzer Service. ??? Es gibt an diesem Rechner nur einen User und das bin ich.
und ich bin als Admin deklariert.Schau mal unter Dienste unter welchem Benutzer der iobroker Dienst läuft. whoami wird das schon richtig ausgeben.
-
@wendy2702
Ich bin irritiert.
whoami ist doch ein Linux-Ding. Gibt's den auch unter Windows? -
@thomas-braun sagte in Exec Befehl funktioniert nicht mehr:
@wendy2702
Ich bin irritiert.
whoami ist doch ein Linux-Ding. Gibt's den auch unter Windows?Ja, gibt es.
-
@bananajoe als NE SERVICE.
Alles anderen Laufen unter "Locales System"
sollte ich den dazu umstellen? -
@bananajoe Hast DU eine Idee?
-
@ben1983 sagte in Exec Befehl funktioniert nicht mehr:
@bananajoe Hast DU eine Idee?
Immer viele, aber keine Erfahrung mit ioBroker unter Windows.
Wie wird nach einem Neustart des Systems ioBroker bei dir gestartet? Ist ioBroker als Dienst eingerichtet?
Start klicken => Dienste eintippenWenn ja: Die Eigenschaften des Dienstes aufrufen, auf dem 2. Reiter Anmeldung schauen was da steht.
Wenn da "Dieses Konto" aktiv ist stell es um auf Lokales Systemkonto - das hat gottgleiche Rechte auf dem Rechner (aber keine im Netzwerk).
Alternativ gehst du auf Durchsuchen, wählts dein Benutzerkonto aus, hinterlegst das Passwort.
Müsste ein Popup kommen das dir die Rechte für "Anmeldung als Dienst" gewährleistet wurden (oder auch nicht wenn du die schon hattest).
Dann läuft ioBroker mit Rechten deines Benutzes. Falls die UAC-Kontrolle an ist mit den eingeschränkten Rechten deines Benutzers (diese Aussage habe ich ohne vorherige Prüfung gemacht).Ob das jeweils klappt könntest du feststellen wenn du wieder den whoami Befehl ausführst und prüfst was er in die Textdatei schreibt.
-
@bananajoe Habe ich gemacht,
jetzt steht in der Datei das drin:
nt-autorit„t\system
Die Bat Datei wird aber immer noch nicht ausgeführt
-
@Ben1983
Lade dir mal dieses Programm herunter:
https://docs.microsoft.com/en-us/sysinternals/downloads/psexecDann gehst du in den Pfad des Programmes in einer Eingabeaufforderung und führst folgenden Befehl aus:
psexec -i -s cmd.exe
Darauf sollte eine weitere Eingabeaufforderung aufgehen. Wenn du in dieser whoami eingibst wirst du feststellen das diese als Benutzer SYSTEM läuft.
Dann startest du aus dieser Eingabeaufforderung heraus einmal deine Batchdatei und schaust was passiert.
-
@bananajoe kann ich nicht ausführen, es wird ausgegeben zugriff verweigert