AutoHotkey
AutoHotkey ist eine freie, quelloffene Skriptsprache für Microsoft Windows. Sie ermöglicht die Erstellung von Tastaturkürzeln oder Hotkeys, die schnelle Erstellung von Makros und die Automatisierung von Software. Sie ermöglicht es Benutzern, sich wiederholende Aufgaben in jeder Windows-Anwendung zu automatisieren. Benutzerschnittstellen können durch AutoHotkey erweitert oder modifiziert werden. Beispielsweise können die Windows-Steuertastenbefehle durch ihre Emacs-Äquivalente ersetzt werden. Die Installation von AutoHotkey enthält eine Hilfedatei. Die Dokumentation ist im Internet verfügbar.
Merkmale
AutoHotkey-Skripte können zum Laden von Programmen, Öffnen von Dokumenten und zur Ausgabe von Tastenanschlägen und Mausklicks verwendet werden.
AutoHotkey-Skripte können auch Variablen ändern und Fenster, Dateien und Ordner manipulieren.
AutoHotkey-Skripte können über einen Hotkey gestartet werden. Wenn der Benutzer eine Tastenkombination drückt, wie z.B. Strg+Alt+I auf der Tastatur, könnte ein Skript einen Webbrowser öffnen.
Tastaturtasten können umbelegt werden, so dass das Drücken von Strg+N dazu führen kann, dass das aktive Fenster einen Bindestrich (-) erhält. Dieselben Tasten könnten deaktiviert werden, so dass das Drücken von Strg+N dazu führen könnte, dass überhaupt nichts geschieht.
AutoHotkey ermöglicht auch "Hotstrings", die bestimmten Text automatisch ersetzen, während er getippt wird. Eine typische Anwendung für Hotstrings ist die Erweiterung von Abkürzungen. Die Eingabe von "btw" könnte gemacht werden, um den Text "nebenbei" zu erzeugen.
Skripte können automatisch beim Start des Computers gestartet werden. Diese könnten im Hintergrund laufen und dazu verwendet werden, Informationen in eine Logdatei zu schreiben.
Komplexere Aufgaben können die Erstellung benutzerdefinierter Dateneingabeformulare (GUI-Fenster), die Arbeit mit der Systemregistrierung oder die Verwendung der Windows-API durch den Aufruf von Funktionen aus DLLs sein. Die Skripte können in eine ausführbare Datei kompiliert werden, die auf anderen Computern ausgeführt werden kann, auf denen AutoHotkey nicht installiert ist.
Der Quellcode ist in C++ und kann mit Visual Studio Express kompiliert werden.
Der Speicherzugriff über Zeiger ist genau wie in C erlaubt.
Einige Verwendungen für AutoHotkey:
- Neubelegung der Tastatur, z.B. von QWERTY auf Dvorak oder andere alternative Tastaturlayouts.
- Verwendung von Verknüpfungen zum Eingeben häufig verwendeter Dateinamen oder anderer Phrasen.
- Eingabe von Zeichensetzung, die auf der Tastatur nicht vorgesehen ist, wie z. B. geschwungene Anführungszeichen ("...").
- Steuerung des Mauszeigers mit einer Tastatur oder einem Joystick.
- Öffnen von Programmen, Dokumenten und Websites mit einfachen Tastenanschlägen.
- Hinzufügen einer Signatur zu E-Mails oder Message Boards.
- Überwachung eines Systems und automatisches Schließen unerwünschter Programme.
- Planen einer automatischen Erinnerung, eines System-Scans oder einer Sicherung.
- Automatisierung sich wiederholender Aufgaben.
- Automatisches Ausfüllen von Wettbewerbs- und Freebie-Formularen (es könnte automatisch Ihren Namen, Ihre Adresse usw. eintragen).
- Prototyping vor der Implementierung in einer anderen, zeitaufwändigeren Programmiersprache.
Geschichte
Die erste öffentliche Beta-Version von AutoHotkey wurde am 10. November 2003 veröffentlicht. Sie basierte auf der Syntax von AutoIt v2 und verwendete einige AutoIt v3-Befehle und den AutoIt v3-Compiler. AutoIt v3 änderte seine Lizenz von der GPL zu Closed Source, weil "andere Projekte wiederholt AutoIt Code verwenden" und "sich als Konkurrenten aufstellen".
2010 wurde AutoHotkey v1.1 (ursprünglich AutoHotkey_L genannt) zur Plattform für die Weiterentwicklung von AutoHotkey. Ende 2012 wurde es zum offiziellen Zweig.
Beispiele
Das folgende Skript ermöglicht es einem Benutzer, mit Google nach einem bestimmten Wort oder Ausdruck zu suchen. Nach dem Kopieren von Text aus einer beliebigen Anwendung in die Zwischenablage wird durch Drücken des konfigurierbaren Hotkeys ⊞ Win+G den Standard-Webbrowser des Benutzers öffnen und die Suche durchführen.
Das folgende Skript definiert einen Hotstring, der es dem Benutzer ermöglicht, "afaik" in ein beliebiges Programm einzugeben und automatisch durch "soweit mir bekannt" ersetzen zu lassen:
Das folgende Beispiel bewirkt, dass Strg+⇧ Umschalt+Q ausgewählten Text in einem Editor durch eine zitierte Version dieses Textes ersetzt. Es veranschaulicht die Verwendung von Funktionen, Argumenten und Standardargumentwerten.
Vom Benutzer beigesteuerte Funktionen
Es sind Erweiterungen/Interops/Inline-Skriptbibliotheken zur Verwendung mit/von anderen Programmiersprachen verfügbar:
- VB/C# (.NET)
- Lua
- Lispeln
- ECL
- VBScript/JScript (Windows Scripting Host)
- Eingebetteter Maschinencode
Andere wichtige Plugins ermöglichen die Unterstützung für:
- Aspekt-orientierte Programmierung
- Funktions-Haken
- COM-Wrapper
- Konsolen-Interaktion
- Dynamische Code-Generierung
- HIDs
- Internet Explorer-Automatisierung
- GUI-Erstellung
- Web-Dienste
- Synthetische Programmierung
- Windows-Ereignishaken
Malware
Einige Malware wurde mit AutoHotkey geschrieben.
Anti-Malware-Produkte identifizieren AutoHotkey-Skripte manchmal fälschlicherweise als Malware. Diese werden als False Positives bezeichnet.