Mit "WKS\..."
können Sie unabhängig vom Abarbeitungsstand einer Remote-
Datei auf bestimmte Tastatureingaben reagieren. Die Befehlssyntax lautet:
WKS\ShortKey|hWnd|State|Discard|Wait|ToDo
ShortKey:Tastencode (KeyCode) der ausgewählten Taste (siehe auch das Tool
"Keystroke Analyzer")
oder
eine Zeichenfolge als
ShortKey. Diese darf nur Buchstaben und Ziffern
enthalten, jedoch keine Umlaute und kein "ß".
Die Länge der Zeichenfolge
ist begrenzt (Default=10)
und kann in der "remote.ini" unter
[shortkeys]
MaxChar=...
eingestellt werden.
hWnd:0 oder leer für systemweite Überwachung oder ein Fensterhandle, wenn
nur
der Thread, zu dem das Fenster gehört, überwacht werden bzw. die
Befehlszeile
nur ausgeführt werden soll, wenn der Thread mit dem Fenster den Focus
hat.
Das Handle kann nach der Lokalisierung eines Fensters ("STW\" o.ä.) mittels
"HTV\"
an eine Variable übergeben werden, welche dann für hWnd eingesetzt
wird.
State: 0 oder leer für Überwachung der reinen Taste,
1 = Shift-Taste
muß zusätzlich gedrückt sein,
2 = Ctrl-
Taste muß zusätzlich gedrückt sein,
4 = Alt-Taste
muß zusätzlich gedrückt sein.
Die Werte können durch Addition kombiniert werden.
Bei Zeichenfolgen als Shortkey wird die Angabe ignoriert.
Discard: 0 oder leer für Unterdrückung der Tastatureingabe für
Überwachungsziel,
1 für Weiterleitung der Tastatureingabe nur an den Zielthread,
2 für generelle Weiterleitung der Tastatureingabe.
Bei Zeichenfolgen als Shortkey wird die Angabe ignoriert.
Wait: 0 oder leer für weitere Abarbeitung der Remote-Datei nach "WKS\",
"w" oder "W" für "Wait". Dann wird die Remote-Datei erst dann weiter
abgearbeitet, wenn die entsprechende Taste(nkombination) gedrückt wird.
Bei Zeichenfolgen als Shortkey wird die Angabe ignoriert.
ToDo: Aktion, die bei Tastendruck ausgeführt
werden soll. Folgende Optionen:
"-" für Anhalten der Abarbeitung,
"+" für Fortsetzen der Abarbeitung,
"@" für normales Beenden der Remote-Datei,
"!" für forciertes Beenden analog "END\",
Befehlszeile,
die bei Tastendruck ausgeführt werden soll (analog "DAS\").
Die Trennzeichen ("|") müssen immer alle
vorhanden sein! Eine Befehlszeile für ToDo kann weitere Senkrechtstriche enthalten (z.B. bei "EXX\").
Der Befehl kann mehrfach mit verschiedenen Tastenangaben
für verschiedene
Fenster/Threads aufgerufen werden (ein KeyCode darf
jedoch nur einmal
verwendet werden); eine Überwachung mit "Wait" wirkt jedoch nur einmalig; für
ein erneutes Warten muß der Befehl erneut aufgerufen werden.
Werden Zeichenfolgen als ShortKeys gemeinsam mit Einzeltasten/kombinationen (KeyCode) benutzt, müssen
die Befehle für die Zeichenfolgen immer zuerst in der Remote-Datei stehen! Zeichenfolgen werden
immer an die aktive Applikation weitergeleitet!
Eine threadbezogene Überwachung bzw. Ausführung der Befehle (Angabe von hWnd) funktioniert nur, wenn die zu überwachende Anwendung ständig läuft.
Nach Schließen und Neustart der Anwendung arbeitet die Überwachung nicht
mehr.
Die Funktionen zum Beenden und Fortsetzen wirken sofort, die zum Anhalten beim Aufruf des nächsten Befehls und die zur Ausführung
einer Befehlszeile
analog zu den Angaben bei "DAS\".
Mit "WKS\" wird jede Überwachung aufgehoben.
Beispiele:
CKS\1 'Überwachung einmalig einschalten
IKA\113 'Überprüfung, ob F2 (= Ascii-Code 113) gedrückt wurde
JNF\F2.rem 'wenn ja, F2.rem abarbeiten (wenn F2.rem nicht existiert,
Fehlermeldung)
EKA\
CKS\1 'Überwachung einmalig einschalten
IKC\H 'Überprüfung, ob Taste "H" gedrückt wurde
JNF\H.rem 'wenn ja, H.rem abarbeiten (wenn H.rem nicht existiert,
Fehlermeldung)
EKC\
Beispiel für die permanente Überwachung mit Abarbeitung spezieller Remote-
Dateien bei jedem Tastendruck; ist die Remotedatei nicht vorhanden, erfolgt
ein akustisches Signal. Der Abbruch der Überwachung kann mit einer
speziellen Taste gekoppelt werden:
:neu
CKS\3 'Überwachung permanent einrichten; JNF-Fehler unterdrücken
IKA\27 'Escape-Taste zum Abbruch einrichten (KeyCode 27)
GOTO ende
EKA\
VAR\$$key=$keyascii$ 'Variable mit (Zeichenfolge des) KeyCode-Wert(es)
belegen
'VAR\$$key=$keychar$ 'Variable mit dem Zeichen belegen (Großbuchstabe)
JNF\$$key.rem 'entsprechende Remote-Datei abarbeiten (wenn nicht
vorhanden, Beep)
'oder:
'JNF\$keyascii$.rem 'Remote-Datei abarbeiten (wenn nicht vorhanden,
Beep)
'JNF\$keychar$.rem 'Remote-Datei abarbeiten (wenn nicht vorhanden, Beep)
GOTO neu 'Sprung; wenn Überwachung bereits läuft, wird sie nicht neu
'installiert
:ende 'Mit
"Escape" abgebrochen
CKS\0 'Überwachung beenden
WPS\akkord 'Abgesang
@
Beispiel für die Einrichtung einer Überwachung zum Anhalten, Fortsetzen und
Beenden einer Remote-Datei mittels "WKS\..." sowie zum Signalisieren, wenn
im Notepad-Editor die Zeichenfolge "doit" gedrückt wird:
CRE\
VAR\$$cnt=0
NEW\notepad\*
EXS\notepad '# Notepad starten
EEW\
STW\notepad\*
HTV\$$wnd
WKS\doit|$$wnd||||WPA\tada '# Zeichenfolge als ShortKey (nur Editor)
VRM\$$wnd '# Variable löschen
DVV\1 '# Zählervariable anzeigen
WKS\189||2|||- '# Ctrl + "-"-Taste für Anhalten (global;
unterdrücken)
WKS\187||2|||+ '# Ctrl + "+"-Taste für Fortsetzen (global;
unterdrücken)
WKS\115||2|||! '# Ctrl + F4 -Taste für Beenden (global;
unterdrücken)
WKS\69||2|||GOTO ende '# Ctrl + "E"-Taste für Beenden und Notepad
schließen
:neu
CAS\1
VIC\$$cnt
GOTO neu
@
:ende
IEW\notepad\*
CLW\1
IWF\1
STW\#32770\editor||notepad
SPC\button\nein||no
MEL\
EWF\
EEW\
DVV\0 '# Fenster für Variablenanzeige schließen
@
© 2006 by Delphin Software