AutoIt - AutoIt
| 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 |
| Stabil kiadás | 3.3.14.5 / 2018. március 16
|
| Előzetes verzió | 3.3.15.4 Béta
/ 2021. június 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 |
| Befolyásolta | |
| ALAPVETŐ | |
Kocsi / ɔː t oʊ ɪ 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
| 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
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
- AutoHotkey
- Automator (Macintosh esetén)
- Elvárás
- Maestro billentyűzet (Macintosh esetén)
- KiXtart
- iMacros
- Macro Express
- thinBasic
- Winbatch