Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| windows:autohotkey [2009/10/04 16:50] – st | windows:autohotkey [2012/09/06 23:39] (aktuell) – [Hotkey definieren] st | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Autohotkey ====== | ||
| + | [[wpde> | ||
| + | |||
| + | AutoHotkey ist ein Programm für [[windows: | ||
| + | |||
| + | |||
| + | [[wpde> | ||
| + | |||
| + | |||
| + | |||
| + | ===== Hilfsprogramme ===== | ||
| + | |||
| + | * **mitgelieferte Tools** | ||
| + | * AutoScriptWriter - MakroRecorder für AHK | ||
| + | * Exe2hk - kompilierte Skripte wieder decompilieren | ||
| + | * Winspy - gibt Informationen zu geöffneten Fenstern aus. | ||
| + | * **Zusatzprogramme** | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Skripte von anderen ===== | ||
| + | |||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | |||
| + | ===== Syntax ===== | ||
| + | |||
| + | Direktiven und Befehle innerhalb einer .ahk-Datei: | ||
| + | |||
| + | * Nach Beendigung des auto-executes-Teiles** im Speicher bleiben** (siehe [[http:// | ||
| + | * Nur **eine Instanz des Programms** erlauben: < | ||
| + | * [[http:// | ||
| + | * **Dateien einbinden** < | ||
| + | |||
| + | |||
| + | ==== Hotkey definieren ==== | ||
| + | |||
| + | Wenn beim Druck einer bestimmten Taste etwas ausgeführt werden soll, muss dieser Code mit einer Tastenkombination und zwei Doppelpunkten danach geschrieben werden (TASTENKOMBINATION:: | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | Beispiel: Win+x löst Dialogbox mit entsprechendem Text aus: | ||
| + | |||
| + | < | ||
| + | #x:: | ||
| + | | ||
| + | return | ||
| + | </ | ||
| + | |||
| + | ^ Stellvertreter ^ spezielle Taste ^ | ||
| + | | # | Windows-Taste | ||
| + | | < | ||
| + | | < | ||
| + | | + | Shift-Taste | ||
| + | |||
| + | |||
| + | :!: Alternativ können Tastendrücke mit dem [[http:// | ||
| + | |||
| + | ==== Kommentare ==== | ||
| + | |||
| + | < | ||
| + | ; einzeiliger Kommentar | ||
| + | /*; mehrzeiliger | ||
| + | Kommentar | ||
| + | */ | ||
| + | </ | ||
| + | |||
| + | ==== Variablen ==== | ||
| + | |||
| + | |||
| + | :!: [[http:// | ||
| + | |||
| + | |||
| + | * **Zuweisung**: | ||
| + | a = 2 ;String oder Integer</ | ||
| + | * Definition (Zuweisung mit Typübernahme)< | ||
| + | a := 2 ;nur integer Zahl | ||
| + | b := " | ||
| + | b = var1 ;String oder integer | ||
| + | c := " | ||
| + | d := b; d enspricht Variable b (Kopie) | ||
| + | e = %b% ;Var e (String) der Inhalt von b enthält | ||
| + | e := % b%a% ; | ||
| + | </ | ||
| + | * **Verkettung** < | ||
| + | * **interne Variablen**: | ||
| + | * %a_index% FIXME | ||
| + | * ... | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==== Sprachelemente ==== | ||
| + | |||
| + | === Funktionen === | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | Der Variablen Ergebnis wird das Ergebnis des Funktionsaufrufes von Addition zugewiesen. Addition bekommt 1 und den Inhalt von a (2) übergeben, in der Variable Ergebnis steht somit am Ende 3. | ||
| + | |||
| + | < | ||
| + | a := 2 | ||
| + | Ergebnis := Addition(1, a) | ||
| + | |||
| + | Addition(a, | ||
| + | { | ||
| + | return a+b+c | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | === Prozeduren === | ||
| + | |||
| + | Prozeduren: Wie Funktionen nur ohne Übergabewerte. | ||
| + | |||
| + | < | ||
| + | Gosub, Halloprozedur | ||
| + | |||
| + | Halloprozedur: | ||
| + | msgbox Hallo Welt | ||
| + | return | ||
| + | </ | ||
| + | |||
| + | === Schleifen === | ||
| + | |||
| + | Der gewünschte Code wird x-mal (hier 3) wiederholt. | ||
| + | |||
| + | < | ||
| + | |||
| + | loop 3 | ||
| + | { | ||
| + | |||
| + | msgbox Durchlauf Nr. %a_index% | ||
| + | |||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Befehle ==== | ||
| + | |||
| + | |||
| + | === IfWinExist (Nach Fenstern suchen) === | ||
| + | |||
| + | |||
| + | Mittels [[http:// | ||
| + | |||
| + | |||
| + | |||
| + | === Timer === | ||
| + | |||
| + | |||
| + | Timer lösen nach bestimmten Intervallen Aktionen aus. | ||
| + | |||
| + | Hier wird alle 250 ms die Prozedur " | ||
| + | |||
| + | < | ||
| + | SetTimer, checkActiveWindow, | ||
| + | SetTimer, checkActiveWindow, | ||
| + | |||
| + | |||
| + | checkActiveWindow: | ||
| + | IfWinExist, | ||
| + | msgbox Taschenrechner gefunden! | ||
| + | return | ||
| + | </ | ||