Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] Exec Befehl funktioniert nicht mehr

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Exec Befehl funktioniert nicht mehr

    This topic has been deleted. Only users with topic management privileges can see it.
    • BananaJoe
      BananaJoe Most Active @Ben1983 last edited by

      @ben1983 Ja würde es. Es könnte nicht schaden am Ende deines Batch ein

      net use \\mybooklive\Datensicherungen /DELETE /YES
      

      anzuhängen, damit meldest du dich quasi wieder ab.

      Falls der Benutzer unter dem der Dienst läuft schon die Rechte für den Zugriff hast kannst du es auch wieder weglassen.
      Ich würde wie gesagt einen extra Benutzer dafür anlegen und dem die Rechte auf dem mybooklive zuweisen.
      So funktioniert es weiter auch wenn du man irgendwo was änderst.

      Ben1983 1 Reply Last reply Reply Quote 0
      • Ben1983
        Ben1983 @BananaJoe last edited by Ben1983

        @bananajoe Funktioniert, indem ich jetzt iobroker als einen bestimmten benutzer ausführen lasse

        allerdings funktioniert jetzt trotzdem eine andere bat nicht:
        diese hat den Inhalt:

        start "C:\Program Files (x86)\Google\Chrome\Application\Chrome.exe" www.amazon.de
        
        BananaJoe 1 Reply Last reply Reply Quote 0
        • BananaJoe
          BananaJoe Most Active @Ben1983 last edited by

          @ben1983 Das funktioniert schon - in teilen.

          Nur das die chrome.exe als Benutzer SYSTEM gestartet wird, sprich du siehst das Fenster nicht.
          Könnte sein das es im Taskmanager zu finden ist.

          Wenn der Dienst mit dem Desktop interagieren soll ...

          Vorher ging das, ja?

          Dann probiere mal den ioBroker Dienst als der Benutzer auszuführen mit dem du angemeldet bist, dann könnte es gehen.
          Oder ioBroker anhalten und von Hand starten, ich nehme an analog wie bei Linux in das Verzeichnis gehen und in einer Eingabeaufforderung

          iobroker start
          

          eingeben.
          Und dann testen ob es geht / der Chrome zu sehen ist

          Ben1983 1 Reply Last reply Reply Quote 0
          • Ben1983
            Ben1983 @BananaJoe last edited by

            @bananajoe iobroker läuft ja jetzt unter meinem Benutzernamen. (Die andere Bat läuft jetzt einwandfrei).
            starte ich die bat, welche den browser öffnen soll aus der cmd von windows heraus, wird der browser geöffnet

            BananaJoe 1 Reply Last reply Reply Quote 0
            • BananaJoe
              BananaJoe Most Active @Ben1983 last edited by BananaJoe

              @ben1983 sagte in [gelöst] Exec Befehl funktioniert nicht mehr:

              @bananajoe iobroker läuft ja jetzt unter meinem Benutzernamen. (Die andere Bat läuft jetzt einwandfrei).
              starte ich die bat, welche den browser öffnen soll aus der cmd von windows heraus, wird der browser geöffnet

              Ich hab das jetzt 3 mal gelesen ... und ich glaube verstanden zu haben das das mit der GUI = dem Browser nicht geht?

              der Grund wird sein das ioBroker als Dienst läuft und nun mal eben nicht so ohne weiteres ein anderes Programm starten und es dir anzeigen kann. Dein Batch mit der Sicherung bekommst du ja auch nicht zu Gesicht, richtig?

              Ich wüsste einen Trick 17 mit dem es doch geht. Das habe ich schon mal genutzt weil man als Benutzter SYSTEM keine "Ausführen als ..." Befehle absetzen kann - über diesen Umweg schon:

              Du startest nicht direkt dein Wunschprogramm sondern erstellst eine Aufgabe in der Aufgabenplanung welche das macht

              %WINDIR%\system32\schtasks.exe /create /SC MINUTE /MO 1 /F /IT /TN MeinTaskName /TR C:\Skripte\meineBatch.bat /RU %COMPUTERNAME%\Benutzername /RP Passwort
              

              das /IT steht für das Interaktive ausführen, eine Batch die du so startest lässt dich ihr Fenster sehen. Statt der Batch kannst du natürlich auch die chrome.exe angeben + Parameter.
              Aber das obige Beisiel würde das 1x pro Minute ausführen, Deshalb eine Batch in deren ersten Zeile das hier steht:

              %WINDIR%\system32\schtasks.exe /delete /F /TN MeinTaskName
              

              Also den Task gleich nach dem Start sich selbst löschen lassen.
              Den Rest findest du in der Hilfe zu schtasks.exe, einfach mal mit /? aufrufen.

              Den Task sollte er so erstellen das der nur Aktiv wird der der Benutzer gerade angemeldet ist. Kannst du ja von Hand vorher testen.
              Mag bessere Lösungen geben, insbesondere welche die schneller starten aber was besseres fällt mir gerade nicht ein.

              Ben1983 1 Reply Last reply Reply Quote 0
              • Ben1983
                Ben1983 @BananaJoe last edited by

                @bananajoe Sorry, kannst Du mir das mal genauer erklären?
                Ich habe doch meine Batchdatei, welche eine Datensicherung macht auch nicht ausführen können, weil iobroker als LokalesSystem lief.
                Nun lasse ich iobroker ja als ein bestimmter benutzer laufen und die Batchdatei kann die datensicherung durchführen.

                Als genau dieser nutzer führe ich die batchdatei aus, welche den browser starten soll.
                (Aus der commandozeile funktioniert das auch).
                Waru klappt es dann nicht mit dem unter dem benutzernamen laufenden iobroker?

                BananaJoe 1 Reply Last reply Reply Quote 0
                • BananaJoe
                  BananaJoe Most Active @Ben1983 last edited by

                  @ben1983 sagte in [gelöst] Exec Befehl funktioniert nicht mehr:

                  @bananajoe Sorry, kannst Du mir das mal genauer erklären?
                  Ich habe doch meine Batchdatei, welche eine Datensicherung macht auch nicht ausführen können, weil iobroker als LokalesSystem lief.
                  Nun lasse ich iobroker ja als ein bestimmter benutzer laufen und die Batchdatei kann die datensicherung durchführen.

                  Als genau dieser nutzer führe ich die batchdatei aus, welche den browser starten soll.
                  (Aus der commandozeile funktioniert das auch).
                  Waru klappt es dann nicht mit dem unter dem benutzernamen laufenden iobroker?

                  Kurz und Knapp: Weil der Prozess der den Browser startet im Hintergrund als Dienst läuft. Und damit ist ihm keine Interaktion mit dem Desktop erlaubt. Der Prozess kann auch keine Unterprozesse starten die dann mit dem Desktop starten. Es könnte gehen wenn du ioBroker nicht als Dienst startest sondern normal als Benutzer vom Desktop aus.

                  Ben1983 1 Reply Last reply Reply Quote 0
                  • Ben1983
                    Ben1983 @BananaJoe last edited by

                    @bananajoe ok.
                    Klingt logisch, aber trotzdem schade.
                    Also aus einem JS Skript direkt gehts dann auch nicht, oder?

                    BananaJoe 1 Reply Last reply Reply Quote 0
                    • BananaJoe
                      BananaJoe Most Active @Ben1983 last edited by

                      @ben1983 sagte in [gelöst] Exec Befehl funktioniert nicht mehr:

                      @bananajoe ok.
                      Klingt logisch, aber trotzdem schade.
                      Also aus einem JS Skript direkt gehts dann auch nicht, oder?

                      Doch - es kommt halt darauf an aus welchem Fokus (aus der Desktopsitzung heraus oder als Dienst) es ausgeführt wurde.
                      Eine schnelle Lösung weis ich aber gerade auch nicht - außer dem Umweg über die Aufgabenplanung den man aber auch testen müsste, ich meine mal über den Weg so etwas hinbekommen zu haben. Aber die Suchmaschine deiner Wahl spuckt eventuell noch mehr Ideen aus.

                      1 Reply Last reply Reply Quote 0
                      • BananaJoe
                        BananaJoe Most Active last edited by

                        @Ben1983 Einen hab ich noch:

                        Es gibt den windows-control Adapter.
                        Der steuert Windows über ein Zusatzprogramm welches in der Taskleiste läuft.

                        So wie ich es sehe sollte damit alles laufen was du willst da du den Befehl ja an den gerade angemeldeten Benutzer sendest.
                        https://forum.iobroker.net/topic/1570/windows-steuerung/2

                        Also auch den Browser starten etc.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        855
                        Online

                        32.0k
                        Users

                        80.4k
                        Topics

                        1.3m
                        Posts

                        4
                        52
                        1723
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo