Notice: This forum has been recovered from an old backup, so some content, links, and dates may be outdated. The forum is currently read-only while we restore sign-in and registration functionality. Details

If you find this forum valuable and would like to help keep it online, donations to help cover hosting and domain costs are greatly appreciated, but never expected. You can support the forum through Buy Me a Coffee or Ko-fi. Thank you for helping preserve the EventGhost community.

globale Variablen in Befehlen?

Allgemeines zum Thema EventGhost
Post Reply
SurFan
Plugin Developer
Posts: 7
Joined: Fri Jul 14, 2006 8:08 am

globale Variablen in Befehlen?

Post by SurFan »

Hi,

kurze Frage: Gibt es eine einfache M├Âglichkeit, globale Variablen (isb. payload) in normalen Befehlen zu verwenden?.

Hintergrund: Ich m├Âchte von au├ƒerhalb (mittels COM-Servers Trigger Event) 1.) den als 2.Parameter ├╝bergebenen String in die Registry schreiben lassen und
2. z.B. den zoomplayer dazu veranlassen, das per 2. Parameter ├╝bergebene Kapitel direkt anzuspringen

Ralph
User avatar
Bitmonster
Site Admin
Posts: 2239
Joined: Mon Feb 06, 2006 10:28 pm

Post by Bitmonster »

Viele Befehle unterst├╝tzen die Verwendung des Klammer-Syntax um Variablen auszuwerten. Payloads kommen z.B. fast immer als Liste und sind ein Feld von "eg.event". Somit lautet eine m├Âgliche Ersetzung z.B.:
{eg.event.payload[0]}

Leider sind nicht alle Befehls-Parameter damit nutzbar. Diese Ersetzung muss der Programmierer des Befehls nämlich immer explizit vorsehen. Sollte es bei einem Befehl nicht gehen, dann kann man den Umweg über ein PythonScript gehen. Das ist u.a. hier beschrieben:
http://www.eventghost.org/wiki/Scripting

Will man also z.B. ZoomPlayer mit einem Payload-Wert aufrufen, dann kann das so aussehen:

Code: Select all

eg.plugins.System.Execute(u'C:\\Programme\\Zoom Player\\zplayer.exe', '"' + eg.event.payload[0] + '"', 0, False, 2)
Der Befehl beherrscht allerdings den Klammer-Syntax.
Please post software-related questions in the forum - PMs will only be answered, if really private, thanks!
Post Reply