diff --git a/target/docs/AHKL_ChangeLog.htm b/target/docs/AHKL_ChangeLog.htm index 7a10ff9f..a4625db4 100644 --- a/target/docs/AHKL_ChangeLog.htm +++ b/target/docs/AHKL_ChangeLog.htm @@ -17,6 +17,20 @@
Ältere Änderungen finden Sie unter Archivierte Änderungen.
+Behoben: LWin::Alt
konnte nicht zum Aktivieren einiger Alt-Kombinationen verwendet werden.
Behoben: Maus-AltTab-Hotkeys unterdrückten nicht die Ausführung eines Präfix-Hotkeys, z.B. 1::
für 1 & WheelDown::AltTab
. (Fehlerhaft seit v1.1.37.00)
Behoben: Hook-Hotkeys erkannten keine Modifikatoren, die mit SendInput nach unten gedrückt wurden.
+Behoben: Einige Probleme mit unterdrückten Alt/Strg/Umschalt/Win-Hotkeys, wie zum Beispiel:
+*LCtrl::
blockierte LCtrl vom aktiven Fenster, aber das Senden von Alt-Tastenkombinationen würde fehlschlagen, weil das System denkt, dass Ctrl unten ist, und daher WM_KEYDOWN statt WM_SYSKEYDOWN senden würde.*LAlt::
hat das System dazu veranlasst, alle vorherigen {LAlt DownR}
zu vergessen, sodass sich eine Neubelegung wie z.B. LCtrl::LAlt
nicht korrekt verhält, wenn LAlt physisch unten ist, auch wenn LAlt unterdrückt wurde.Behoben: A_Clipboard ignorierte die Zuweisung rein numerischer Werte.
+Behoben: SendInput konnte LCtrl nicht loslassen, nachdem RAlt losgelassen wurde (wenn es nicht AltGr ist).
+Behoben: Neue Threads konnten eine Meldungsüberprüfung mit Critical nicht verhindern.
+Behoben: Hotkeys wurden aufgrund einer Race Condition nicht ausgelöst. Wenn ein Modifikator-Hotkey wie ~*RWin::
zu früh Send oder GetKeyState aufruft, kann das System melden, dass RWin nicht unten ist, wodurch der Modifikatorstatus des Hooks "korrigiert" wird und Hotkeys fälschlicherweise ausgelöst oder nicht ausgelöst werden. Dies trat wahrscheinlich nur auf, wenn ein anderer Tastatur-Hook vor dem Hook des Skripts installiert wurde, da in diesem Fall das System den Status der Tasten nicht aktualisiert, bis der Thread des anderen Hooks fortgesetzt wird und zurückkehrt.
Behoben: Hotstrings verwenden nun das Zuletzt Gefundene Fenster von #If.
diff --git a/target/docs/index.htm b/target/docs/index.htm index 81a65c99..7dbddd95 100644 --- a/target/docs/index.htm +++ b/target/docs/index.htm @@ -13,7 +13,7 @@ -Eine deutsche Übersetzung von https://www.autohotkey.com/docs/v1/ (siehe hier für mehr Details).
©2003 Chris Mallett, und zum Teil ©AutoIt-Team und die AHK-Community
Software-Lizenz: GNU General Public License
diff --git a/target/docs/lib/ControlGet.htm b/target/docs/lib/ControlGet.htm index ece69b58..923c9711 100644 --- a/target/docs/lib/ControlGet.htm +++ b/target/docs/lib/ControlGet.htm @@ -80,8 +80,8 @@Kopiert einen Ordner mit all seinen Unterordnern und Dateien (ähnlich wie xcopy).
+Kopiert einen Ordner mit all seinen Unterordnern und Dateien (ähnlich wie xcopy) oder den gesamten Inhalt einer Archivdatei (z.B. ZIP).
FileCopyDir, Quelle, Ziel , Überschreiben
Name des Quellverzeichnisses (ohne umgekehrten Schrägstrich am Ende). Wenn kein absoluter Pfad angegeben ist, wird das Verzeichnis im A_WorkingDir-Verzeichnis vermutet. Zum Beispiel: C:\Mein Ordner
-[v1.1.34+]: Sofern vom Betriebssystem unterstützt, kann Quelle auch der Pfad einer ZIP-Datei sein; in diesem Fall wird der Inhalt der ZIP-Datei in das Zielverzeichnis kopiert. Dies wurde erfolgreich in Windows 7 und Windows 11 getestet.
+[v1.1.34+]: Sofern vom Betriebssystem unterstützt, kann Quelle auch der Pfad einer Archivdatei sein; in diesem Fall wird ihr Inhalt in das Zielverzeichnis kopiert. ZIP-Dateien benötigen mindestens Windows Vista. TAR-Dateien benötigen mindestens Windows 10 (1803) Build 17063. RAR, 7z, gz und andere benötigen mindestens Windows 11 23H2 (das libarchive verwendet, wo alle unterstützten Formate aufgelistet sind).
Löscht eine oder mehrere Dateien.
+Löscht eine oder mehrere Dateien endgültig.
FileDelete, DateiMuster
Wenn Dateien gefunden wurden, wird A_LastError auf 0 oder das Ergebnis der Systemfunktion GetLastError() unmittelbar nach dem letzten Misserfolg gesetzt. Andernfalls enthält A_LastError einen Fehlercode, der eventuell kenntlich macht, warum keine Dateien gefunden wurden.
Um eine Datei in den Papierkorb zu verschieben, verwenden Sie den FileRecycle-Befehl.
Um eine schreibgeschützte Datei zu löschen, entfernen Sie zuerst das Schreibschutzattribut. Zum Beispiel: FileSetAttrib, -R, C:\Meine Datei.txt
.
FileRecycle, FileRemoveDir, FileCopy, FileMove
diff --git a/target/docs/lib/ListView.htm b/target/docs/lib/ListView.htm index e959e87c..e0a1819a 100644 --- a/target/docs/lib/ListView.htm +++ b/target/docs/lib/ListView.htm @@ -322,7 +322,7 @@Wenn leer, weggelassen oder kleiner als 1, beginnt die Suche bei der ersten Zeile in der Liste. Andernfalls geben Sie die Nummer der Zeile an, bei der die Suche beginnen soll.
+Wenn leer, weggelassen oder kleiner als 1, beginnt die Suche bei der ersten Zeile in der Liste. Andernfalls geben Sie die Nummer der Zeile an, um die Suche bei der darauffolgenden Zeile zu beginnen.
Wenn leer oder weggelassen, wird standardmäßig 5000 verwendet, was dem Standardverhalten in älteren Versionen von AutoHotkey entspricht, die diesen Parameter nicht unterstützen. Andernfalls geben Sie die maximale Wartezeit in Millisekunden an, die dem Zielfenster zur Verfügung steht, um die Meldung zu verarbeiten. Wenn die Meldung innerhalb dieser Zeit nicht verarbeitet wurde, wird der Befehl beendet und ErrorLevel auf das Wort FAIL gesetzt. Dieser Parameter kann ein Ausdruck sein.
Wenn leer oder weggelassen, wird standardmäßig 5000 verwendet, was dem Standardverhalten in älteren Versionen von AutoHotkey entspricht, die diesen Parameter nicht unterstützen. Andernfalls geben Sie die maximale Wartezeit in Millisekunden an, die dem Zielfenster zur Verfügung steht, um die Meldung zu verarbeiten. Wenn die Meldung innerhalb dieser Zeit nicht verarbeitet wurde, wird der Befehl beendet und ErrorLevel auf das Wort FAIL gesetzt. Geben Sie 0 an, um unendlich lang zu warten. Eine negative Zahl bewirkt, dass SendMessage sofort das Zeitlimit überschreitet. Dieser Parameter kann ein Ausdruck sein.
Sendet eine Alt+nnnnn-Ziffernblock-Tastenkombination. Dies ermöglicht die Erzeugung von Sonderzeichen, die auf der Tastatur nicht existieren. Um ASCII-Zeichen zu erzeugen, geben Sie eine Zahl zwischen 1 und 255 an. Um ANSI-Zeichen zu erzeugen (Standard in den meisten Sprachen), geben Sie eine Zahl zwischen 128 und 255 an, aber stellen Sie ihr eine Null voran, z.B. {Asc 0133}.
+Sendet eine Alt+nnnnn-Ziffernblock-Tastenkombination. Dies ermöglicht die Erzeugung von Sonderzeichen, die auf der Tastatur nicht existieren. Um sichtbare ASCII-Zeichen oder andere Zeichen aus der Codepage 437 zu erzeugen, geben Sie eine Zahl zwischen 1 und 255 an. Um ANSI-Zeichen zu erzeugen (Standard in den meisten Sprachen), geben Sie eine Zahl zwischen 128 und 255 an, aber stellen Sie ihr eine Null voran, z.B. {Asc 0133}.
Um Unicode-Zeichen zu erzeugen, geben Sie eine Zahl zwischen 256 und 65535 an (ohne Null am Anfang). Dies wird jedoch nicht von allen Anwendungen unterstützt. Alternativen finden Sie im nächsten Abschnitt.
SendInput ist in der Regel die bevorzugte Methode zum Senden von Tastendrücken und Mausklicks, da sie schneller und zuverlässiger ist als die anderen Methoden. In den meisten Fällen ist SendInput nahezu verzögerungsfrei, sogar wenn lange Zeichenketten gesendet werden. Durch diese Schnelligkeit ist SendInput auch zuverlässiger, da das Risiko verringert wird, dass unerwartet ein anderes Fenster erscheint und die Tastendrücke abfängt. Die Zuverlässigkeit wird noch weiter verbessert durch die Tatsache, dass alles, was der Benutzer während eines SendInputs eingibt, bis zu dessen Abschluss nach hinten verschoben wird.
Im Gegensatz zu den anderen Send-Modi ist SendInput auf ca. 5000 Zeichen begrenzt (dies kann je nach Systemversion und Performanzeinstellungen variieren). Zeichen und Ereignisse oberhalb dieser Grenze werden nicht gesendet.
Hinweis: SendInput ignoriert SetKeyDelay, da das Betriebssystem in diesem Modus keine Verzögerung unterstützt. Wenn SendInput jedoch wegen der unten beschriebenen Bedingungen auf SendEvent zurückfällt, verwendet es SetKeyDelay -1, 0
(es sei denn, die Tastenverzögerung von SendEvent ist -1, -1
, dann wird -1, -1
verwendet). Wenn SendInput auf SendPlay zurückfällt, verwendet es die Tastenverzögerung von SendPlay.
Wenn das Skript einen Low-Level-Tastatur-Hook installiert hat, deinstalliert SendInput ihn automatisch vor der Ausführung und installiert ihn danach wieder. Folglich ist SendInput in der Regel nicht in der Lage, die Hook-Hotkeys oder InputHooks des Skripts auszulösen. Der Hook wird temporär deinstalliert, da seine Existenz sonst alle Vorteile von SendInput zunichtemachen würde und somit sowohl SendPlay als auch SendEvent unterlegen wäre. Dies wird jedoch nur für den Hook des Skripts gemacht, nicht aber, wenn ein externer Hook erkannt wird, wie unten beschrieben.
Wenn SendInput Mausklicks mit Mitteln wie {Click} sendet, während CoordMode Mouse, Relative
aktiv ist (die Standardeinstellung), wird jeder Klick relativ zum Fenster sein, das zu Beginn des Sendens aktiv war. Wenn SendInput also absichtlich ein anderes Fenster aktiviert (z.B. mit ALT+TAB), werden die Koordinaten der nachfolgenden Klicks innerhalb desselben Befehls falsch sein, da sie immer noch relativ zum alten statt zum neuen Fenster sind.
Diese Funktion gibt die kopierte oder umgewandelte Zeichenkette zurück. Wenn die Quellkodierung korrekt angegeben wurde, verwendet der Rückgabewert immer die native Kodierung. Die Zeichenkette ist immer nullterminiert, aber der Nullterminator wird nicht zur Länge des Rückgabewertes hinzugezählt.
+Diese Funktion gibt die kopierte oder umgewandelte Zeichenkette zurück. Wenn die Quellkodierung korrekt angegeben wurde, verwendet der Rückgabewert immer die native Kodierung. Der Wert ist immer nullterminiert, aber der Nullterminator ist nicht in seiner Länge enthalten.
Es wird eine leere Zeichenkette zurückgegeben, wenn ungültige Parameter erkannt werden oder die Umwandlung nicht durchgeführt werden kann.
diff --git a/target/docs/lib/Transform.htm b/target/docs/lib/Transform.htm index 12aee921..d8d13fe8 100644 --- a/target/docs/lib/Transform.htm +++ b/target/docs/lib/Transform.htm @@ -77,7 +77,7 @@Veraltet: Nicht für neue Skripte empfohlen. Verwenden Sie stattdessen eine benutzerdefinierte Funktion wie EncodeHTML().
-Wandelt eine bestimmte Zeichenkette in ihr HTML-Äquivalent um, indem Zeichen, deren ASCII-Wert größer als 127 ist, in ihren HTML-Namen übersetzt werden (z.B. wird £
zu £
).
Wandelt eine bestimmte Zeichenkette in ihr HTML-Äquivalent um, indem Zeichen, deren ASCII-Wert größer als 127 ist, in ihre HTML-Namen übersetzt werden (z.B. wird £
zu £
).
Transform, AusgabeVar, HTML, Zkette , Flags
Außerdem werden die vier Zeichen "&<>
in "&<>
und jedes LF-Zeichen (`n
) in <br>`n
übersetzt (d.h. <br>
gefolgt von einem LF-Zeichen). Der Flags-Parameter wird ignoriert.
Bei Unicode-Builds kann zusätzlich der Flags-Parameter verwendet werden, der entweder eine 0 oder eine Kombination (Summe) der folgenden Werte sein kann. Wenn leer oder weggelassen, wird standardmäßig 1 verwendet.
diff --git a/target/docs/lib/WinGet.htm b/target/docs/lib/WinGet.htm index dd9629e5..5ef58d26 100644 --- a/target/docs/lib/WinGet.htm +++ b/target/docs/lib/WinGet.htm @@ -100,7 +100,7 @@Ruft die Namen aller Steuerelemente in einem Fenster ab.
WinGet, AusgabeVar, ControlList , FensterTitel, FensterText, AusnahmeTitel, AusnahmeText-
Wenn kein Fenster gefunden wurde oder keine Steuerelemente im Fenster vorhanden sind, wird AusgabeVar leer gemacht. Andernfalls wird es auf eine Liste von Steuerelementnamen gesetzt. Jeder Name besteht aus dem Klassennamen des Steuerelements, unmittelbar gefolgt von seiner Sequenznummer (ClassNN), wie vom internen Tool "Window Spy" angezeigt.
+Wenn kein Fenster gefunden wurde oder keine Steuerelemente im Fenster vorhanden sind, wird AusgabeVar leer gemacht. Andernfalls wird es auf eine Liste von Steuerelementnamen gesetzt. Jeder Name besteht aus dem Klassennamen des Steuerelements gefolgt von seiner Sequenznummer (ClassNN), wie im internen Tool "Window Spy" angezeigt.
Jeder Steuerelementname außer dem letzten endet mit einem LF-Zeichen (`n). Um die Steuerelementnamen einzeln durchzugehen, verwenden Sie eine parsende Schleife, wie in Beispiel #3 unten gezeigt.
Steuerelemente werden nach ihrer Z-Reihenfolge sortiert, was üblicherweise der Navigation via Tab entspricht, sofern vom Fenster unterstützt.
diff --git a/target/docs/lib/index.htm b/target/docs/lib/index.htm index 6cf38005..c00eb1db 100644 --- a/target/docs/lib/index.htm +++ b/target/docs/lib/index.htm @@ -285,7 +285,7 @@Wenn das Steuerelement eine einzelne Textzeile enthält, wird der Text innerhalb der verfügbaren Höhe des Steuerelements vertikal zentriert.
+Zentriert das Bild innerhalb des Steuerelements. Wenn das Bild zu groß ist, wird es gekürzt. Wenn das Steuerelement ein Text-Steuerelement ist und eine einzelne Textzeile enthält, wird der Text innerhalb der verfügbaren Höhe des Steuerelements vertikal zentriert.
+Zentriert das Bild innerhalb des Steuerelements. Wenn das Bild zu groß ist, wird es gekürzt.
Microsoft Windows XP: Dieser Style führt nicht mehr dazu, dass ungenutzte Bereiche des Steuerelements mit der Farbe des linken oberen Pixels des Bildes oder Symbols gefüllt werden. Die unbenutzten Bereiche des Steuerelements behalten die Hintergrundfarbe.
Ähnlich wie Transform HTML wandelt diese Funktion eine Zeichenkette in ihr HTML-Äquivalent um, indem sie Zeichen, deren ASCII-Wert größer als 127 ist, in ihren HTML-Namen übersetzt werden (z.B. wird £
zu £
). Außerdem werden die vier Zeichen "&<>
in "&<>
und jedes LF-Zeichen (`n
) in <br>`n
übersetzt (d.h. <br>
gefolgt von einem LF-Zeichen).
Ähnlich wie Transform HTML wandelt diese Funktion eine Zeichenkette in ihr HTML-Äquivalent um, indem sie Zeichen, deren ASCII-Wert größer als 127 ist, in ihre HTML-Namen übersetzt (z.B. wird £
zu £
). Außerdem werden die vier Zeichen "&<>
in "&<>
und jedes LF-Zeichen (`n
) in <br>`n
übersetzt (d.h. <br>
gefolgt von einem LF-Zeichen).