# Versionsgeschichte

Hier ist die Versiongeschichte der veröffentlichten AutoIt-3-Versionen. Die komplette Liste inklusive der Beta-Versionen gibt es hier.

7. Februar 2005 - v3.1.0

- Neu: Möglichkeit zur GUI-Erstellung
- Neu: DllCall(), DllOpen(), DllClose()
- Neu: ControlListView()
- Neu: WinList()
- Neu: DirGetSize()
- Neu: IniReadSectionNames(), IniReadSection()
- Neu: InetGet(), InetGetSize()
- Neu: HttpSetProxy(), FtpSetProxy()
- Neu: FtpBinaryMode (Option)
- Neu: Ping()
- Neu: ControlGetHundle()
- Neu: WinGetProcess() und ProcessList()
- Neu: SetExtended()
- Neu: WinSetTrans()
- Neu: Assign()
- Neu: ConsoleWrite()
- Neu: @AutoItExe-Makro
- Neu: Schlüsselwort Const
- Neu: Unterstützung optionaler Parameter für Userdefinierte Funktionen
- Neu: "main", "primary", "menu", "secondary" als gültige Mausbuttontypen hinzugefügt
- Neu: ExpundVarStrings (Option)
- Neu: Die Benutzerfunktionen OnAutoItStart() und OnAutoItExit() werden während des Starts und Beendens aufgerufen
- Neu: OnExitFunc (Option)

- Entfernt: URLDownloadToFile() (ersetzt durch InetGet())

- Verändert: For-Schleifen deklarieren die Zählervariable automatisch als lokale Variable
- Verändert: IniDelete() kann auch komplette Sektionen löschen
- Verändert: StringReplace() gibt im @extended-Makro auch die Anzahl der Ersetzungen zurück
- Verändert: StringMid() der "count"-Parameter ist jetzt optional (standardmäßig der Rest des Strings)
- Verändert: PixelChecksum() hat jetzt den optionalen "step"-Parameter
- Verändert: Control...()-Funktionen akzeptieren jetzt die Control-ID als alternativen Weg, um ein Control zu identifizieren
- Verändert: Die InetGet()-Funktion kann jetzt im Hintergrund herunterladen.
- Verändert: Reg...()-Funktionen lösen keinen schweren Fehler mehr aus, wenn ein unbekannter Schlüssel benutzt wird.
- Verändert: Die mouse- und pixel-Funktionen haben jetzt einen zusätzlichen "client area"-Modus
- Verändert: WIN_2003 als neuer möglicher Wert für @OS_VERSION
- Verändert: AU3Spy.exe umbenannt in AU3Info.exe
- Verändert: Große Verbesserungen beim AutoIt Window Info Tool (control-Hervorhebung, Lupe, Cursor-IDs)
- Verändert: FileSelectFolder() unterstützt sowohl relative als auch absolute Pfadangeaben
- Verändert: File-Funktionen lösen keine fatalen Fehler mehr aus, wenn -1 als Handle angegeben wird

- Verbessert: Speicherloch in SplashImageOn()
- Verbessert: Ausdrücke wie "$var = $var" lösen jetzt einen Fehler aus, wenn die Variable zuvor nicht definiert wurde
- Verbessert: StringFormat() mit \\-Zeichen
- Verbessert: In seltenen Fällen veblieb die AutoIt3.exe nach Beendigung des Skriptes noch einige Zeit im Taskmanager
- Verbessert: Bestimmte Pfade wie @WindowsDir waren unter Windwos Terminal Server nicht korrekt
- Verbessert: FileSetTime(): Systeme in nicht-GMT-Zeitzonen (z.B. Deutschland, d. Übersetzer) lieferten falsche Ergebnisse
- Verbessert: FileMove() mit UNC-Pfaden (führt statt dem Kopieren ein echtes Verschieben durch).
- Verbessert: ^-Operator
- Verbessert: Chr()-Funktion
- Verbessert: StatusBarGetText() schlug fehl, wenn es ohne text-parameter aufgerufen wurde
- Verbessert: InputBox() gab den Fokus nicht an das zuvor aktive Fenster zurück

4. August 2004 - v3.0.102

Große Veränderung: Farben werden nun standardmäßig im RGB-Format, statt wie früher im BGR-Format angegeben. Das betrifft PixelSearch() und PixelGetColor().

Die "ColorMode"-Option wurde neu eingeführt, um auch alte Skripte mit alten Farbangaben weiter nutzen zu können. Dazu musst du einfach am Anfang des Skriptes folgendes angeben:

Opt("ColorMode", 1)

Wenn du Farbfunktionen in deinen Code benutzt, dann MUSST du die obige Änderung bedenken und entweder die alten Farbangaben ändern ODER den Opt("ColorMode", 1) setzen. Das betrifft besonders BOTs und Code, der mit Spielen interagiert.

- Neu: DriveMapAdd(), DriveMapDel() und DriveMapGet()
- Neu: @SW_SHOWDEFAULT, @SW_SHOWMAXIMIZED, @SW_SHOWMINIMIZED, @SW_SHOWMINNOACTIVE,
  @SW_SHOWNA, @SW_SHOWNOACTIVATE, @SW_SHOWNORMAL
- Neu: FileGetShortcut()
- Neu: Die vordefinierte $CmdLineRaw-Variable beinhaltet jetzt die komplette Kommandozeile
- Neu: @DesktopDepth
- Neu: ReDim
- Neu: Mehr Kommandozeilenparameter für Aut2Exe.exe: /nodecompile und /comp 0-4 (Kompressionslevel, 4=bestes)
- Neu: Process ID (PID)-Unterstützung für Process...()- und Run()-Funktionen
- Neu: ProcessSetPriority()
- Neu: Decompiler (Exe2Aut)
- Neu: PixelChecksum()
- Neu: Strings, die mit "0x" beginnen, werden aus dem hexadezimalen Format umgewandelt, wenn sie als Zahlen verwendet werden sollen
- Neu: MouseWheel()
- Neu: RegEnumKey() und RegEnumVal()
- Neu: FileRecycleEmpty()

- Verändert: TimerStart() umbenannt in TimerInit(). TimerStop() umbenannt in TimerDiff()
- Verändert: FileSelectFolder()-flag-Parameter
- Verändert: REG_MULTI_SZ-Werte in Reg...()-Funktionen erlauben double-NULL-Werte
- Verändert: BitOr(), Bitund() und BitXOR() nehmen bis zu 255 Parameter entgegen
- Verändert: Icon- und Windowstate-Optionen neu in FileCreateShortcut()
- Verändert: RunAsSet() unterstützt zusätzliche Profil-Handling-Optionen
- Verändert: RegWrite() akzeptiert jetzt auch nur den Schlüsselnamen, um einen Schlüsselnamen ohne Wert zu erzeugen
- Verändert: "Allow Decompilation"-Option neu in Aut2Exe
- Verändert: Aut2Exe gibt während der Kompilierung Meldungen aus und kann abgebrochen werden
- Verändert: Kompilierte Skripte laufen viel schneller, wenn FileInstall mittelgroße bzw. große Dateien benutzt werden
- Verändert: Begrenzung der Anzahl der Userfunktionen aufgehoben
- Verändert: Begrenzung der Anzahl der Variablen aufgehoben
- Verändert: bei -1 wird zwischen Send/Maus-Befehlen keine Pause eingelegt (SendKeyDelay, etc...)
- Verändert: Optionaler Parameter "occurance" neu bei StringInStr()
- Verändert: Optionaler Standarddateiname neu bei FileOpenDialog() und FileSaveDialog()
- Verändert: Registryfunktionen akzeptieren Hauptschlüsselabkürzungen (HKLM statt HKEY_LOCAL_MACHINE, etc.)
- Verändert: Registryschlüssel auf anderen Computern werden in folgender Form akzeptiert: "\\computername\key\subkey"
- Verändert: AutoItSetOption gibt die letzte Einstellung zurück

- Verbessert: FileGetSize() arbeitet auch bei Datreien größer 2 GB und gerade benutzten Dateien
- Verbessert: Der Ausdruck: If "non-blank" and 1 - gibt nun true zurück
- Verbessert: ToolTip() wenn die Maus nahe dem unteren Bildschirmrand ist
- Verbessert: StringIsDigit()
- Verbessert: Process...()-Funktionen waren unter Windows NT4 nicht in der Lage, bestimmte Prozesse zu sehen
- Verbessert: Manche Schlüsselwörter waren unkorrekterweise nach THEN erlaubt

11. März 2004 - v3.0.101

- Neu: MemGetStats()
- Verbessert: Windows 95a-Kompatibilität
- Verbessert: Korrektur kleiner Rechtschreibfehler in der Hilfe

29. Februar 2004 - v3.0.100

- Erste veröffentlichung