Wenn der automatische Start nicht funktioniert

Allgemeines zum Thema EventGhost
Post Reply
Christoph21x
Posts: 9
Joined: Tue Jun 28, 2011 11:07 am

Wenn der automatische Start nicht funktioniert

Post by Christoph21x » Wed Sep 28, 2011 7:52 am

Hallo Ihr Alle!

Ich lese oft in Foren über das "Autostart-Problem" von EventGhost.
Ich möchte gerne keine Frage stellen, sondern eine potenzielle Lösung posten - für alle die, die EventGhost LIEBEN und eben dieses "eine Problem" haben: EG startet nicht automatisch. Und vielleicht mag es dem Einen oder Anderen helfen - speziell "Problem 2".

Ich hatte vergleichbare Probleme, wobei meines Erachtens zwei oder drei Probleme "vermischt" werden in den Diskussionen:
1. EventGhost startet nicht aus dem Startmenü/Autostart heraus
2. EventGhost startet auch nicht aus der Aufgabenplanung heraus - auch nicht, wenn "höchste Privilegien" und "diverse Tipps" angewendet wurden (die stimmen!).
3. EventGhost startet, bringt aber eine Fehlermeldung - also arbeitet effektiv nicht, aber das Programm läuft.

Die beiden ersten Fälle sind davon begleitet, dass Windows ein "Ausführen als Administrator" einfordert.
Es kann sein, dass bei Euch nur Fall 1 auftritt - aber nicht Fall zwei. Dann trifft unten stehende Lösung vermutlich auf Euch nicht zu. Benutzt dann am besten Eure Taskplaner-Aufgabe zum Starten. Wer hier gerne Detailinfos haben möchte - bitte melden.

Fall 1:
Grundsätzlich verlangt EventGhost GAR KEINE Administratorenrechte. Das gilt für 64- UND auf 32-Bitsystemen gleich - es gibt hier keine grundsätzlichen Probleme, bei beiden Systemen besteht aus User-Sicht kein Unterschied - EG ist ohnehin bei beiden Systemen ein 32-Bit-Programm ;)
Einige PlugIns brauchen jedoch Admin-Rechte, weil sie sich in die Message-Queues der Windows-Devices einhängen - und aus Sicherheitsgründen verhindert das die UAC. Vielleicht mögliche Lösung: siehe Fall 3 unten.
Grundsätzlich kann EventGhost über einen normalen Autostart-Eintrag im Startmenü des Benutzers, verschiedener Benutzer oder aller Benutzer gestartet werden. Achtet nur darauf, dass das Config-File (Euer EG-Programm) an einer Stelle liegt, auf die auch ggf. alle Benutzer, die EG verwenden sollen, Lese-, Schreib- und Änderungsberechtigung haben.

Es kann also auch ein Standardbenutzer sein, nicht nur ein Administrator-Account. Das funktioniert ab spätestens der laufenden Version, ich verwende z.B. 0.4.1.r1540 -> letzte Version verwenden bitte!
Legt im Autostart-Menü der Benutzer, die EG verwenden sollen, folgende Verknüpfung an, wenn sie nicht schon vorhanden ist:

Name: EventGhost Autostart - das ist zwar nicht default (= "EventGhost"), aber es zeigt Euch, dass es die Autostart-Verknüpfung mit anderen Befehlszeilenargumenten ist.
Verknüpfung: "C:\Program Files (x86)\EventGhost\EventGhost.exe" -h -e OnInitAfterBoot
(MIT den Anführungszeichen - Pfad ggf. anpassen, hier der EG-Default-Pfad auf x64-Systemen)
Ausführen: normales Fenster

Übrigens: Über das Autostart-Menü lässt sie GAR KEINE Applikation starten, die Administrator-Rechte verlangt - das geht NUR über die Aufgabenplanung (gemäss Microsoft).

Startet es nun nicht, lest bitte weiter - Fall 2...

Fall 2:
Habt Ihr bereits früher eine ältere EG-Version verwendet und diese erst auf die "latest" upgedated (respektive De-Installation und Neuinstallation), habt Ihr vielleicht das gleiche Problem wie ich es hatte: Fall 1 + Fall 2, später Fall 3.
Die Deinstallationsroutine entfernt nicht alle "related" Registry-Einträge, eigentlich nur zwei davon. CLSID (die eigentliche ID) bleibt erhalten, wird nur geleert, der Rest bleibt erhalten.
Spielentscheidend ist also eine Säuberung der Registry von Hand (für Perfektionisten: sucht die Reg nach "EventGhost" durch - alle Keys löschen) - aber insbesondere einen Eintrag müsst Ihr löschen. Das ist auch der Grund, warum nach einem "Plattmachen" eines PC's und einer Neu-Installation gleich der latest Version es dann funktioniert.

Ihr solltet prüfen, ob Windows einen Kompatibilitätseintrag in der Registry angelegt hat. Dieser Eintrag war bei früheren Versionen seitens Windows automatisch angelegt worden, ich vermute, EG war damals noch nicht "clean" gemäss der Microsoft-Programmierrichtlinien.
Windows legt dann einen Registry-Eintrag "<Programpfad>\EventGhost.exe" / "RUNASADMIN" - starten als Administrator - an. Dieser bleibt natürlich auch nach einer Deinstallation erhalten! Und da/wenn Pfad und Name der Exe-Datei bei einem Update gleich bleiben, wendet Windows diese Regel an und fordert Admin-Ausführung ein. Und... das funktioniert nicht im Autostart.
ABER: Es geht dann AUCH nicht in der Aufgabenplanung - egal, ob "mit höchsten Privilegien ausführen" aktiviert ist oder nicht bzw. welcher Benutzeraccount auch immer gewählt ist.

Dieser Windows-Registry-Eintrag muss manuell gelöscht werden - und das ist einfach.
(Wer allerdings nicht weiss, wie das geht - bitte extreme VORSICHT, wenn Ihr falsche Einträge löscht, kann Windows im Schlimmsten Fall nicht mehr startfähig sein!!)

Startet Regedit als ADMINISTRATOR (sonst habt Ihr in diesem Registry-Segment keine Änderungsberechtigung!)
(Windows-Taste (allein) dücken, regedit eintippen, kurz warten, dann erscheint im Start-Menü der EIntrag Regedit - ist Systemkomponente, also bei jedem vorhanden. RECHTER Mausklick drauf und "als Administrator ausführen" wählen)

Regedit:
Wählt im Registry Tree links den Eintrag
HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / WinNT / CurrentVersion / AppCompatFlags / Layers

Rechts bei den "Werten" werdet Ihr einen Eintrag finden mit dem "Wert" = C:\Program Files (x86)\EventGhost\EventGhost.exe (oder eben Eurem Pfad)
Klickt auf den WERT (NICHT den Tree links), DELETE. Es erscheint eine Warnung, dass das Löschen zur Instabilität des Systems führen kann. Seid sicher, dass Ihr NUR DIESEN EINTRAG angewählt habt und "Ok" bzw. "JA".
Dann könnt Ihr den Regedit wieder schliessen.
System neu booten.
Anmerkung: wundert Euch nicht - war das der "letzte" Eintrag (ausser dem Defaulteintrag von Windows) unter diesem Key, verschwindet der Key komplett - Ihr werdet ihn nicht mehr finden.

Prüft, ob nun EventGhost ohne Admin-Rechte startet.
Kommt eine Fehlermeldung, lest bitte "Fall 3", vielleicht trifft der zu.
Kommt keine Fehlermeldung und EventGhost startet...
- Eintrag in Autostart-Menü (siehe "Fall 1") und probieren
- Taskplaner-Aufgabe deaktivieren oder löschen

Fall 3: Fehlermeldung "kann HID-Device nicht initialisieren" oder "erfordert Administratorenrechte" - Fenster mit "rotem X"
DIES ist eine EventGhost-Fehlermeldung - es läuft also - Ihr solltet es auch im Tray sehen.
Bestimmte PlugIns - z.B. die MCE-Remote - BRAUCHT Admin-Rechte. Es gibt wohl eine neuere Lösung und Workarounds, ich empfehle aber einen anderen "Versuch":
Löscht das MCE-Plugin (ggf. BEIDE, wenn Ihr auch die Alternative eingebaut habt).
Verwendet das PlugIn "Generic HID Device" - das benötigt in der Default-Einstellung keine Admin-Rechte. Es kann so konfiguriert werden, dass es welche braucht, den HID-Treiber umleitet / routet - DANN braucht Ihr wieder welche, aber das sollte erstens nicht nötig sein und zweitens sollte es dann wenigstens über die Aufgabenplanung startbar sein "mit höchsten Privilegien" aktivieren!
Ich würde mit Default-Einstellungen zuerst probieren und dann, wenn es funktioniert, mit der einfachen Autostart-Menü-Variante (Fall 1) verfahren.

Fügt Ihr das Generic HID Device ein, dann wird eine Liste mit HID-Devices geöffnet.
Hierin findet Ihr nun mindestens 4 Einträge.
Eure Maus, Eure Tastatur, die Remote (ZWEIMAL MINDESTENS - bei mir z.B. VIER Mal, sie bedienen unterschiedliche Interfaces von Windows), auch die Joysticks, wenn Ihr welche habt, werdet Ihr dort finden...
Welcher Eintrag ist welches Device? Schaut Euch die Herstellereinträge in der Liste ein, das kann eingrenzen.
Ansonsten: ausprobieren!
Tipp hierzu: Fügt doch für JEDEN Eintrag ein PlugIn hinzu, das Euch "möglich" erscheint. Verwendet die Devices und deaktiviert ein Plugin nach dem Anderen - bald wisst Ihr, welches welches ist. Die Einträge bleiben üblicherweise konstant. Es kann nur sein, dass Ihr im EG-Log bei EINEM Tastendruck MEHRERE Einträge erhaltet - dann habt Ihr das gleiche Device zweimal aktiviert an unterschiedlichen Schnittstellen.
Zweite Info: Viele HID Devices haben ZWEI Einträge. Allerdings rufen sie unterschiedliche Events hervor. Im hardwarenahen Modus (könnte einer der Einträge sein) erhaltet Ihr VERSCHIEDENE Events beim ersten und beim zweiten Tastendruck. Als wäre es ein "Radiobutton": erstes Mal "AN", zweites Mal "AUS". In Euren Makros müsstet Ihr dann beide Events (untereinander) hinzufügen... einfacher wäre da ein HID Interface, das immer den gleichen Wert liefert (üblicherweise zwischen 1 und 255 oder 1 und 65535) - bekommt Ihr stattdessen eine lange Byte-Folge, dann seid Ihr hardwarenah.... hier sind auch Repeatfolgen, Länge des Drückens und das Device selbst codiert, soweit ich weiss...

So - das war's. Ich schreibe das so ausführlich, weil ich hoffe, dass es jemandem helfen könnte, der vor den gleichen Problemen steht wie Ihr vielleicht und ich.

Ich sende Euch herzliche Grüsse aus der Schweiz - Christoph

keywords: EventGhost automatisch mit Windows starten funktioniert nicht Aufgabenplanung Autostart Startmenü

cerberusde
Posts: 1
Joined: Wed Oct 05, 2011 8:37 am

Re: Wenn der automatische Start nicht funktioniert

Post by cerberusde » Wed Oct 05, 2011 8:52 am

Hallo,

danke für die super Anleitung. Für mich kommt nur Fall 3 in Frage, da das MCE-Remote Plugin Admin Rechte benötigt. Hatte alles wie in Fall 2 beschrieben versucht, klappt aber nicht. Wennn ich nun das Generic HID Device nutze, werden auch die IR Befehle in EG Log angezeit. Leider interpretiert Windows selbst die Befehle auch, so das ich im Mediaportal z.B. die Befehle dann doppel ausgeführt werden z.b. "Curser Down" springt zwei Zeilen runter. Ich habe dann versucht über das MCE-Remote Plugin das HID zu deaktivieren, jedoch funktioniert dann kein Befehl mehr über das Generic HID Plugin.

Wie kann ich verhindern das Windows selbst die HID Befehle ausführt wenn EG gestartet ist?

Gruß
cerberusde

Christoph21x
Posts: 9
Joined: Tue Jun 28, 2011 11:07 am

Re: Wenn der automatische Start nicht funktioniert

Post by Christoph21x » Wed Oct 05, 2011 1:53 pm

Hallo Cerberus,

gern geschehen - würde mich ja freuen, wenn es Dir helfen könnte.

Als Erstes würde ich einmal das Forum hier durchsuchen - angeblich gibt es eine Lösung der MCE-Remote, die keine Admin-Rechte benötigt. Das wäre, wenn es stimmt, der schnellste Weg vermutlich. Ich selbst weiss es nicht, da ich das Modul MCE-Remote ohnehin nicht benutze.

Das Entscheidende ist wohl, dass das WMC nicht auf die Fernbedienung reagiert, wenn es nicht im Vordergrund ist. Ist das bei MP anders? Sobald ich es also z.B. Minimiere oder ein andere Programm in den Vordergrund hole oder maximiere (z.B. Firefox), reagiert WMC ohnehin nicht mehr auf die Keystrokes. Das heisst, NUR beim ersten Drücken, wenn ich Firefox aufrufe, dann reagiert WMC noch, dann lasse ich Ff starten, suche das Fenster, bringe es in den Vordergrund - und dann behandelt EG Alles.
Ich verwende z.B. zum Aufruf die "TV Guide"-Taste, dann springt WMC zwar auch in den TV-Guid, aber ich sende ihm ein "Back" hinterher (bei MP wohl "ESCAPE"?) - und es ist wieder da, wo es war.

Wenn das bei MP anders ist, dann probiere doch mal Folgendes:
Nach den Events (den HID-Messages) direkt den Befehl "Verwerfe alle ausstehenden Ereignisse" und als letzten Befehl des Makros "Beende Bearbeitung dieses Ereignisses"

Wenn das nicht geht oder nicht gut geht, dann folgende Frage:
Benutzt Du Context-Folders? Z.B. einen für Dein MP (ich benutze WMC), einen für was-auch-immer-Du-machen-willst, z.B. Firefox steuern (wie in meinem Fall über Remote Potato den "TV-Server" - auch ein WMC - fernprogrammieren)
Das wäre wichtig zu wissen, denn damit kannst Du die jeweilig nicht aktiven Makros deaktivieren - zumindest in EG.
Bei mir wird beim Start des Firefox der der Firefox exklusiv aktiviert (d.h. alle anderen deaktiviert) und beim Ende wieder der WMC in den Fordergrund geholt und dessen Context exklusiv aktiviert.

Hoffe, dass es herfen konnte.

Gruss aus der Schweiz - Christoph

Post Reply