AutoIt - AutoIt

AutoIt
Autoitlogo.png
AutoIT példa script.png
Paradigma Tárgy-orientált , imperatív , funkcionális , eljárási , reflektív
Tervezte Jonathan Bennett
Fejlesztő AutoIt Consulting Kft.
Először jelent meg 1999. január ; 22 évvel ezelőtt ( 1999-01 )
Stabil kiadás
3.3.14.5 / 2018. március 16 .; 3 évvel ezelőtt ( 2018-03-16 )
Előzetes verzió
3.3.15.4 Béta / 2021. június 12 .; 4 hónappal ezelőtt ( 2021-06-12 )
Felület IA-32 és x64
OS Windows XP SP3 és újabb
Windows Server 2003 és újabb
Engedély Freeware
Fájlnévkiterjesztések .au3
Weboldal www .autoitscript .com
Befolyásolta
ALAPVETŐ

Kocsi / ɔː t ɪ t / egy ingyenes programozási nyelv a Microsoft Windows . Legkorábbi kiadásában elsősorban automatizálási szkriptek (néha makrók ) létrehozását tervezték a Microsoft Windows programokhoz, de azóta a programozási nyelvtervezés és az általános funkciók fejlesztéseit is magában foglalja.

Az AutoIt 1 és 2 szkriptnyelve utasításvezérelt volt, és elsősorban a felhasználói interakció szimulálására készült. A 3. verziótól kezdve az AutoIt szintaxisa hasonló a BASIC nyelvcsaládéhoz. Ebben a formában az AutoIt egy általános célú, harmadik generációs programozási nyelv , klasszikus adatmodellel és változatos adattípussal , amely többféle adatot képes tárolni, beleértve a tömböket is.

Az AutoIt automatizálási szkript átalakítható tömörített, önálló végrehajtható fájlba, amely akkor is futtatható számítógépeken, ha nincs telepítve az AutoIt tolmács. A függvénykönyvtárak széles skálája (UDF -ként vagy "Felhasználó által definiált funkciók" néven is ismert) alapfelszereltség, vagy a webhelyről is elérhetők speciális funkciók hozzáadásához. Az AutoIt az ingyenes SciTE szerkesztőn alapuló IDE -vel is terjesztésre kerül . A fordító és a súgó szöveg teljesen integrált, és de facto szabványos környezetet biztosít az AutoIt -et használó fejlesztők számára.

Történelem

Kiadási idővonal
1999 Január: Az első AutoIt verzió (1.0)
Augusztus: AutoIt v2 és AutoItX
Szeptember: Az első AutoIt verzió fordítóval
2000
2001
2002 December: AutoIt v3 (nyilvános béta)
2003
2004 Február: AutoIt v3 (stabil)
2005
2006 Szeptember: Az Auto3Lib elindult
2007 November: Megjelent az AutoIt v3.2.10.0, az Auto3Lib beépítve az AutoIt v3 -ba
2008 Május: Megjelent az AutoIt v3.2.12.0, amely további GUI funkciókat tartalmaz
December: Megjelent az AutoIt (és az AutoItX) v3.3.0.0
2009 December: Megjelent az AutoIt v3.3.2.0
2010 Január: Megjelent az AutoIt v3.3.4.0
Március: megjelent az AutoIt v3.3.6.0
Április: Megjelent az AutoIt v3.3.6.1
2011 December: Megjelent az AutoIt v3.3.8.0
2012 Január: Megjelent az AutoIt v3.3.8.1
2013 December: Megjelent az AutoIt v3.3.10.0
2014 Június: megjelent az AutoIt v3.3.12.0
2015 Július: megjelent az AutoIt v3.3.14.0 és v3.3.14.1 verziója
Szeptember: Megjelent az AutoIt v3.3.14.2
2016
2017
2018 Február: Megjelent az AutoIt v3.3.14.3
Március: megjelent az AutoIt v3.3.14.5

Az AutoIt1 és az AutoIt2 zárt forráskódú projektek voltak, és nagyon más szintaxissal rendelkeztek, mint az AutoIt3, amelynek szintaxisa inkább VBScript és BASIC.

Az AutoIt3 kezdetben ingyenes és nyílt forráskódú volt , a GNU General Public License feltételei alapján licencelt , az eredeti nyilvános kiadással 3.0.100 2004 februárjában, és nyílt forráskódú kiadásokkal rendelkeztek 2004 márciusában és 2004. augusztusában. 3.0.102, 2004 augusztusában jelent meg, kezdetben nyílt forráskódú volt, de 2005 januárjára zárt forráskódúként terjesztették. A későbbi kiadások, a 3.1.0 verzió 2005. februári kiadásától kezdődően, mind zárt forráskódúak voltak. A 3.1.0 verzió volt az első kiadás is, amely támogatta a GUI szkripteket.

Kapcsolódó projektek

Az ingyenes és nyílt forráskódú AutoHotkey projekt 29 funkcióját az AutoIt 3.1 forráskódjából származtatta. Az AutoHotKey szintaxisa meglehetősen különbözik az AutoIt3 szintaxistól, és inkább az AutoIt2 szintaxisra hasonlít.

Jellemzők

Image
AU3 fájlformátum ikon

Az AutoIt -t általában segédprogramok előállítására használják a Microsoft Windows rendszerhez, és automatizálják a rutinfeladatokat, például a rendszerkezelést, a felügyeletet, a karbantartást vagy a szoftver telepítését. Felhasználói interakciók szimulálására is használják, amikor az alkalmazást (automatikus űrlapbevitel, billentyűlenyomások, egérkattintások stb.) "Hajtja végre" az AutoIt szkript.

Az AutoIt alacsony költségű laboratóriumi automatizálásban is használható . Az alkalmazások közé tartozik a műszerek szinkronizálása, a riasztásfigyelés és az eredménygyűjtés. Olyan eszközök is vezérelhetők, mint a CNC útválasztók és a 3D nyomtatók.

  • Szkriptnyelv BASIC-szerű szerkezettel a Windows számára
  • Összeállítás önálló végrehajtható fájlokba
  • Kiegészítő könyvtárak és modulok bizonyos alkalmazásokhoz
  • Támogatja a TCP és UDP protokollokat
  • Támogatja a komponensobjektum -modellt (COM)
  • Hívásfunkciók DLL fájlokban
  • Futtassa a konzolos alkalmazásokat, és érje el a szabványos adatfolyamokat
  • Futtassa az összeállított fájlba az adatfájlokat, amelyeket futtatáskor ki kell vonni
  • Hozzon létre grafikus felhasználói felületeket , beleértve az üzeneteket és a beviteli mezőket
  • Hangok lejátszása, szüneteltetés, folytatás, leállítás, keresés, a hang aktuális helyzetének megállapítása és a hang hosszának meghatározása
  • Szimulálja az egér mozgását
  • Az ablakok és folyamatok manipulálása
  • Automatizálja a felhasználói beviteli és billentyűleütések küldését az alkalmazásokhoz, valamint az alkalmazáson belüli egyéni vezérlőkhöz
  • Unicode támogatás a 3.2.4.0 verzióból
  • 64 bites kód támogatás a 3.2.10.0 verzióból
  • Támogatja a rendszeres kifejezéseket
  • Kompatibilis a felhasználói fiókok felügyeletével
  • Objektum-orientált tervezés könyvtáron keresztül

Példák

Helló Világ

; Make available a library of constant values.
#include <MsgBoxConstants.au3>

; Displays "Hello, world!" in a messagebox.
MsgBox($MB_SYSTEMMODAL, "Title", "Hello, world!")

A Windows számológép automatizálása

; Make available a library of constant values.
#include <MsgBoxConstants.au3>

; Display a message box with a timeout of 6 seconds.
MsgBox($MB_OK, "Attention", "Avoid touching the keyboard or mouse during automation.", 6)

; Run the Windows Calculator.
Run("calc.exe")

; Wait for the calculator to become active with a timeout of 10 seconds.
WinWaitActive("[CLASS:CalcFrame]", "", 10)

; If the calculator did not appear after 10 seconds then exit the script.
If WinExists("[CLASS:CalcFrame]") = 0 Then Exit

; Automatically type the current year into the calculator.
Send(@YEAR)

; Let's slow the script down a bit so we can see what's going on.
Sleep(600)

; Automatically type in 'divide by 4', and then sleep 600 ms.
Send("/4")
Sleep(600)

; Hit the return key to display the result, and sleep 600 ms.
Send("{ENTER}")
Sleep(600)

; Copy the result to the clipboard using the Windows shortcut Ctrl+C.
Send("^c")

; Declare, and assign the contents of the clipboard to, a variable.
Local $fResult = ClipGet()

; Check to see if the variable contains a decimal point or not.
If StringInStr($fResult, ".") Then
    ; Display a message box with a timeout of 5 seconds.
    MsgBox($MB_OK, "Leap Year", @YEAR & " is not a leap year.", 5)
Else
    ; This message will only display if the current year is a leap year.
    MsgBox($MB_OK, "Leap Year", @YEAR & " is a leap year.", 5)
EndIf

; Close the Windows calculator - always tidy up afterwards.
WinClose("[CLASS:CalcFrame]")

Keresse meg az átlagot

; Find Average by JohnOne, modified by czardas
#include <MsgBoxConstants.au3>

_Example() ; Run the example.

Func _Example()
    ; Display an input box and ask the user to enter some numbers separated by commas.
    Local $sInput = InputBox("Find Average", "Enter some numbers separated by commas: 1,2,42,100,3")

	; If an error occurred then exit the script.
	If @error Then Exit

    ; Populate an array with the user's input.
    Local $aSplit = StringSplit($sInput, ",")

    ; Pass the array to the function _Find_Average() and then check for errors.
    Local $fAverage = _Find_Average($aSplit)
    If @error Then Exit

    ; Display the result in a message box.
    MsgBox($MB_OK, "Find Average", "Result: " & $fAverage)
EndFunc   ;==>_Example

Func _Find_Average($aArray)
    ; If the input is not of the correct type (an array), then return an error along with the details.
    If Not IsArray($aArray) Then Return SetError(1, 0, VarGetType($aArray))
	; More detailed checks are possible, but for brevity just one is performed here.

    ; Declare a variable to store the sum of the numbers.
    Local $iArraySum = 0

    ; Loop through the array.
    For $i = 1 To $aArray[0]
        ; Increment the sum by the number in each array element.
        $iArraySum += Number($aArray[$i])
    Next

    ; Return the average rounded to 2 decimal places.
    Return Round($iArraySum / $aArray[0], 2)
EndFunc   ;==>_Find_Average

Lásd még

Hivatkozások

Külső linkek