HTPCWatcher...Kontrolliere Shell, Fokus,Emus und mehr


  • PS: Vielleicht noch zur Ergänzung. Ich habe für einige PC-Spiele (u.a. auch einen Playstation2 Emulator) einen "Prozess killen" Switch auf meinem Gamepad definiert um nach dem Spielen wieder in Kodi zu landen. Hierbei funktioniert die Rückkehr in ein Vollbild-Kodi, jedoch lande ich ab und zu (alle 5-10 mal) nicht zurück in Kodi, statt dessen wird der Windowsdesktop gestartet (gebootet, weil vorher HTPCWatcher als Shell).

    Da hast Du wahrscheinlich Kodi neustarten im Menü ausgewählt. Wenn sich Kodi dann in der Shell beendet, oder es zu lang dauert, bis Kodi neugestartet wird, so denkt ein Programmteil das Kodi dauerhaft beendet wurde und startet somit den Explorer. Hier sollte vielleicht eine einstellbare Delay-Schwelle hinzugefügt werden, falls meine Vermutung korrekt ist.

    Also Kodi Neustart habe ich nicht aktiviert. Kodi läuft im Vollbildmodus ohne irgendwelche speziellen Fokusierungen. Das Kontrollprogramm wird dann in den Vordergrund geschaltet. Kodi scheint sich aber dann auch zu minimieren und wird, anders als bei der Batchdateien, nach killen des Kontrollprogramms wieder in Vollbild geschaltet (oder eben nicht und Windows startet)...

  • Also nochmal mit dem Explorer.

    1. Du hast mein Programm als Shell eingestellt
    2. Mein Programm bootet und startet Kodi
    3. Du startest ein Programm innerhalb Kodi und beendest es
    4. Jetzt wird manchmal der Desktop gestartet, obwohl Du zurück zu Kodi möchtest ?
    5.Wenn Du Kodi beendest, startet der Exporer normal ?


    Aso...hast Du eigentlich schonmal den Fokus in meinem Programm eingestellt ? Vielleicht minimiert dann Kodi nicht mehr ?

  • 1-5 sind korrekt

    zu 3) Es sind PC-Spiele, bzw. Emulatoren die ich über ADVL starte und für die ich im Watcher einen "Prozess killen" Switch definiert habe auf meinem Gamepad. Diese verursachen manchmal das Problem unter (4). Ferner habe ich auch Batchdateien in Kodi hinterlegt. Diese werde über den ADVL gestartet und in einem CMD-Fenster abgearbeitet. Hier habe ich dann das andere Problem, dass Kodi danach nicht mehr maximiert (was mit 5.0 noch ging).

    zu 4) Ja, nach betätigen des Kill-Switches.

    zu 5) Ja

    Bzgl. Fokus habe ich im "Fokusfenster" keine Einstellungen vorgenommen, da es ja für inverse Einstellungen da ist, also für "INAKTIV bei..." bzw. "Fokus DEAKTIVIEREN". Ich nahm an, dass der Fokus von Kodi also default aktiviert ist.
    Ich habe aber alle Programme in der ADVL-Liste auf "In den Vordergrund" gesetzt, was auch funktioniert. Probleme mit "...Kodi im Vordergrund,obwohl dort ein anderes Programm laufen sollte..." habe ich demnach nicht.

    Hier geht es aber nicht mehr um das Problem aus "1-5" sondern um das Minimierungsproblem, richtig?
    Was meinst Du denn das ich im "Fokusfenster" einstellen sollte, damit Kodi nicht minimiert? Alle Programme aus der ADVL-Liste unter "inaktiv bei..."?

  • Ich werd mal versuchen das mit dem Minimieren über das Cmdfenster nachzuvollziehen. Was benutzt Du für ne Kodiversion ?

    Was den Fokus angeht, wollte ich einfach nur mal wissen ob das Häckchen denn auch bei Fokus einstellen gesetzt ist.

    Egal, werd schauen ob ich was machen kann. Auch wenn ich grad nicht wirklich die Zeit finde.

  • Wäre super wenn du das mit dem Minimieren beheben kannst, denn das ist für mich das wichtigere Problem, da ich über die Batches meine Festplatten auf meinem Fileserver steuere.
    Ich benutze Jarvis 16.1

    Vielen Dank nochmal!

    Einmal editiert, zuletzt von Mayo (27. Juli 2016 um 00:10)

  • Ja !! Ich konnte den Fehler nun endlich finden. Es war eine Variable die das Fokusieren sperrte.
    0 = Desktophandelfenster. Wenn nun die Shell ausgeführt wird und das Programm zurückkehrt hat man ja den Desktop als Hintergrund. Somit wird nicht fokusiert. Im normalen Windows gehts, da es da den Windowsexplorer als Fenster hat ! Und dieses Fenster ist ungleich 0.

    Die nächste Version scheint jedenfalls sehr robust zu sein. Zumindest geht jetzt das zurückkehren extrem schnell, da ich den Code zusammengefasst bzw verkürzt habe.

    Allerdings konnte ich das mit dem starten des Explorers nicht reproduzieren. War Kodi zu dem Zeitpunkt, wo der Explorer gestartet ist noch aktiv ? Hast Du vielleicht noch ein paar Details ? Hast Du da die 5.7 er Version benutzt ?

  • So, jetzt, diesmal eine lohnenswerte Version

    folgende Neuerungen:

    Die Textgroesse ist jetzt über sonstige Einstellungen anpassbar
    Somit kann man nun jedes Fenster in die richtige Grösse / Position ziehen, und die Texthoehe an die Auflösung des HTPC anpassen

    Das Emufrontend / Mediacenter kann ab jetzt getrennt beendet oder gestartet werden
    Wenn man z.b den DVBViewer in Verbindung mit Attract Mode als Spieleplattform benutzt, hat man einen ausgezeichneten HTPC, da es hierfür fast identische Skins gibt :)

    man kann nun den Fokustimer per Joypad aktivieren (Standartmässig aktiviert)
    Dies ist nützlich wenn man das Fokussystem erst später beim spielen braucht
    Ich werde später eventuell noch eine programmierbare Taste zum ein / ausschalten hinzufügen

    Der Fokustimer kann nun beim Mediacenter / Emufrontend deaktiviert werden
    Dies ist nützlich wenn man den Fokus nur bei den Spielen braucht

    Bei benutzeraktivität kann der der Fokustimer resetet werden. Dies braucht man, wenn man gerade etwas im Menü macht, oder sich durch die Fenster schaltet. Dadurch schaltet mein Programm nicht den Fokus um, sondert setzt den Zähler auf 0

    Die Fokusausnahmen können nun deaktiviert werden, sobald das Kontrollprogramm startet
    Falls man die Ausnahmen nur auf das Mediacenter oder Emufrontend beschränken will, kann man diese
    Funktion aktivieren

    Die zu kontrollierenden Programme / Emulatoren werden nun standartmässig im Vordergrund gehalten
    Das Intervall ist bei Fokus einstellen justierbar. Die Einstellung des Timers hat auf alle Fokustypen Einfluss ! Der Fokustimer muss aktiviert sein ! Sonst geht es nicht !

    Es wurde der Code vereinfacht und die Debugmeldungen abgeändert. Wenn ihr in das [definition='1','4']Debuglog[/definition] schaut, so werdet ihr sehen, das alles wesentlich geordneter zugeht..


    ...Achso...Ja und natürlich das minimieren von Kodi "sollte" behoben sein....Ich hoffe dem ist auch so

    32 Bit:
    https://workupload.com/file/Vx7wcHK

    64 Bit:
    https://workupload.com/file/3natbkp

    ..Aso, und bitte nicht nur einfach runterladen und übers kostenlose Programm freun. Nen Kommentar wäre auch nett.

  • Ja bitte, das mit dem Explorer wird wohl nicht behoben sein. Das wäre eher Zufall. Bei dieser Version musst Du übrigens den Fokus fürs Mediacenter deaktivieren, aber allgemein aktivieren wenn Du ihn nicht für Kodi haben willst. Ansonsten werden die PC Spiele nicht mehr fokusiert. Es hat sich bei dieser Version einiges geändert.

  • Nochmal ich...

    Hab mir das mit dem Fokus mal angeschaut, aber ehrlich gesagt nicht ganz verstanden... sorry.
    Könntest Du bitte mal einfach sagen, was angehakt werden muss und was nicht.... so für Doofe mein ich ;)

    Eine weitere Sache ist mir aufgefallen. Ich starte in der Shell eine Verknüpfung zu einem Gamepad Bluetooth Programm. Dieses wird in der aktuellen Version gleich dreimal gestartet beim booten. Das war bei der 5.7er imho noch nicht so.

    Ich habe weiterhin mal einen kleinen (unscharfen :)) Film vom der Maximierungsproblem gemacht.

  • Also laut [definition='1','4']Debuglog[/definition] findet er keine übereinstimmende Programmdatei im Ram. Hast Du denn das Programm das Du kontrollieren willst auch in der Liste des Watcher eingetragen und extern gestartet ? Starte mal den Emulator oder was auch immer. Jetzt muss diese Exe oder Com Datei im Taskmanager auftauchen. Tut sie das ? Dann kann es auch sein das es mehrere Programmdateien in einem Verzeichniss gibt, welche sich gegenseitig aufrufen. Es darf allerdings nur die Datei in der Liste stehen, welche später auch im Taskmanager auftaucht ! Nur wenn dem so ist, erkennt es mein Programm und gibt den Fokus an Kodi zurück bei Programmende. Ansonsten musst Du den allgemeinen Kodifokus aktivieren. Dann wird der Fokus in bestimmten Intervallen an Kodi übergeben.

    Aso...Der Pfad in der Batchdatei, also die Exedatei direkt muss in der Liste stehen ! Nicht die Batchdatei ! Und kontrolliere mal den Pfad auf Richtigkeit ! Ich sehe übrigens kein Programm, welches gestartet wird in Deinem Video ??!

  • Danke für Deine Mühen!

    Ich starte kein wirkliches Programm, sondern eine Batchdatei, die via. dem Programm "curl" ein php-Skript auf meinem Fileserver ausführt. Inhalt der Batchdatei ist nur der curl Aufruf wie z.B.: curl http://MEDIENSERVER/xxx.php

    Die Batch wird in einem cmd Fenster ausgeführt (dieses siehst Du im Video) und danach sollte Kodi wieder fokusieren.

    Ich habe nun versucht die cmd.exe im Watcher als Kontrollprogramm einzutragen, brachte aber keine Verbesserung. Aufgrund Deiner Log-Auswertung ist das Problem imho reproduzierbar, denn da das cmd-Fenster sofort wieder schliesst (siehe Film) findet der Watcher nichts mehr zum killen und Kodi wird nicht wieder fokusiert.

    Oder verstehe ich Deinen letzten Satz richtig, dass "curl" als Kontrollprogramm eingerichtet werden muss? Dann bleibt das Problem aber bestehen, dass es (bzw. der Prozess) sofort wieder endet und der Watcher nichts zum schliessen hat.

    Mir fallen spontan 3 Lösungsansätze ein, die ich dann testen werde, wenn meine Freundin den HTPC wieder frei gibt :)

    1) Ich füge eine Pause ein ins Skript, so dass das Fenster stehen bleibt und der Watcher etwas zum killen vorfindet.
    2) Ich füge einen erneuten Startbefehl für Kodi in meine Batchdatei ein, so dass Kodi (hoffentlich) durch den Aufruf wieder fokusiert.
    3) Ich versuche ohne Batchdatei auszukommen, indem in curl direkt im ADVL starte mit dem php Aufruf als Parameter (dies wäre die eleganteste Lösung, habe aber keine Ahnung ob es klappt und wie der Watcher darauf reagiert.)

    Komisch aber, dass es "damals" im Watcher 5.0 ohne Probleme funktionierte mit dem Fokus nach dem Batch?

    Einmal editiert, zuletzt von Mayo (31. Juli 2016 um 20:29)

  • So, da ich morgen frei habe, hab ich nun mal ne Nachtschicht eingelegt.

    Vorab, ich habe eine Lösung gefunden die nicht sehr elegant ist und wo auch doofe cmd-Fenster lange zu sehen sind... aber es geht!

    Ich habe mich zuerst daran gemacht und alle ADVL-Starter neu erstellt, gemäß meiner Idee (3). Dies funktionierte überraschend gut, aber mit demselben Ergebnis, dass Kodi nicht mehr maximiert. Das Problem auch hier, Curl wird in einem cmd-Fenster ausgeführt und ist als Commandozeilen-Prg. schon wieder durch, bevor der Watcher es findet.

    Ich habe dann Curl zusätzlich als Kontrollprogramm im Watcher erstellt. Dies brachte aber auch keine Lösung...

    ... Nun habe ich etwas gemacht, dass programmtechnisch eigentlich gar nicht geht. Ich habe einfach zusätzlich zum php Aufruf noch einen Startbefehl für Kodi in den Parametern zu Curl im ADVL-Skript eingetragen... und siehe da... läuft... wenn auch nicht gerade hübsch... :)

  • Naja, das wäre mir zu viel gewurschtel. Du musst erstmal die Funktionsweise des Fokus verstehen.
    Es gibt in meinem Programm 2 Fokustypen. Der 1. ist ein Timer. Dieser Timer prüft unabhängig davon ob jetzt was in der Watcherliste steht oder nicht. Dieser ist einstellbar. Er ist für allgemeine Fenster da, welche verdeckt werden sollen. Wie z.b das Batchfenster.

    Der 2. Fokus wird von mir Programmintern benutzt, ist aber nicht einstellbar. Er kommt immer dann zum tragen, nachdem ein Programm beendet wurde und der Fokus sofort gesetzt werden soll.


    Mach mal folgendes :
    - gehe unter Fokus einstellen
    - klicke Fokus allgemein aktivieren an.
    - Mache aber dort alle anderen Haken raus
    - Setze ausserdem den Fokustimerwert auf 0.
    - Starte nun die Batchdatei per Kodi und schick mir mal dann mal das [definition='1','4']Debuglog[/definition]. Normalerweise müsste dann was mit Fokus in der [definition='1','4']Debuglog[/definition] stehen. Ich sehe nämlich nix in Deiner alten [definition='1','4']Debuglog[/definition] davon!! Daher gehe ich mal von aus das der Fokustimer bei Dir deaktiviert ist ! Somit geht es nicht !

    Jetzt sollte Kodi ohne Unterbrechung im Vordergrund gehalten werden unabhängig davon ob jetzt nun das Curl Programm (noch nie gehört ?!) in der Liste steht oder nicht. Das gilt also auch für dein Cmd Fenster !


    Eine weitere Sache ist mir aufgefallen. Ich starte in der Shell eine Verknüpfung zu einem Gamepad Bluetooth Programm. Dieses wird in der aktuellen Version gleich dreimal gestartet beim booten. Das war bei der 5.7er imho noch nicht so.

    Kannst Du vielleicht auch hier mal ne [definition='1','4']Debuglog[/definition] schicken, damit ich die Abarbeitung nachvollziehen kann ? Sowas sollte natürlich nicht sein !

  • Also, ich habe den Fokus wie beschrieben angehakt und den Timer auf 0 und dann mal auf 1 Sekunde gesetzt.
    Resultat war (wie bisher) kein Fokussieren nach dem Batch.
    Kodi fokusiert nur, wenn ich es wie oben beschrieben, nach dem Curl-Aufruf noch einmal starte. Dies tat es aber auch ohne das "Fokus-Häkchen", man merkt aber, dass Kodi (mit dem erneuten Aufruf und dem Fokushäkchen) zweimal kurz hintereinander aufpoppt, hingegen ohne den erneuten Aufruf kein Mal!

    Ich reich das Log und die Einstellungen nach, komm da gerade nicht dran.

    Curl ist übrigens ein Commandline Programm für den Zugriff auf einen Webserver z.B. via. Apache. So kann ich aus Kodi heraus Tätigkeiten direkt auf meinem Fileserver ausführen. Tolle Sache! https://de.wikipedia.org/wiki/CURL

    Bzgl. der Shell, wenn ich die Programm.exe starte, wird sie korrekt nur einmal ausgeführt. Wenn ich statt dessen eine Verknüpfung einfüge (die mir halt noch mehr Startoptionen ermöglicht) führt die Watcher-Shell das Programm sogar 4 mal aus (nicht 3 mal wie vorher behauptet).

    Einmal editiert, zuletzt von Mayo (1. August 2016 um 20:57)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!