AutoIt - AutoIt

AutoIt
Autoitlogo.png
AutoIT -esimerkki script.png
Paradigma Objektiivinen , pakottava , toiminnallinen , menettelyllinen , heijastava
Suunnitellut Jonathan Bennett
Kehittäjä AutoIt Consulting Ltd.
Ensimmäinen ilmestyi Tammikuu 1999 ; 22 vuotta sitten ( 1999-01 )
Vakaa julkaisu
3.3.14.5 / 16. maaliskuuta 2018 ; 3 vuotta sitten ( 2018-03-16 )
Esikatsele julkaisua
3.3.15.4 Beta / 12. kesäkuuta 2021 ; 4 kuukautta sitten ( 2021-06-12 )
Alusta IA-32 ja x64
Käyttöjärjestelmä Windows XP SP3 ja uudemmat
Windows Server 2003 ja uudemmat
Lisenssi Freeware
Tiedostotunnisteet .au3
Verkkosivusto www .autoitscript .com
Vaikuttanut
PERUS

AutoIt / ɔː t ɪ t / on freeware ohjelmointikieli for Microsoft Windows . Varhaisimmassa julkaisussaan se oli ensisijaisesti tarkoitettu luomaan automaatiokomentosarjoja (joita joskus kutsutaan makroiksi ) Microsoft Windows -ohjelmille, mutta on sittemmin laajentunut sisältämään parannuksia sekä ohjelmointikielen suunnitteluun että yleisiin toimintoihin.

Skriptikieli in AutoIt 1 ja 2 oli selvitys-odotuksiin ja suunniteltu ensisijaisesti simuloidaan käyttäjän toimia. Versiosta 3 lähtien AutoIt -syntaksi on samanlainen kuin BASIC -kieliperheessä . Tässä muodossa AutoIt on yleiskäyttöinen kolmannen sukupolven ohjelmointikieli, jossa on klassinen tietomalli ja muunnettu tietotyyppi, joka voi tallentaa useita tietotyyppejä, mukaan lukien taulukot.

AutoIt-automaatiokomentosarja voidaan muuntaa pakatuksi, itsenäiseksi suoritettavaksi suoritettavaksi suoritettavaksi suoritettavaksi suoritettavaksi tiedostoksi, jota voidaan käyttää tietokoneissa, vaikka niissä ei olisi AutoIt-tulkkia asennettuna. Laaja valikoima toimintokirjastoja (tunnetaan myös nimellä UDF tai User Defined Functions) ovat myös vakiona tai ne ovat saatavilla verkkosivustolta erikoistuneiden toimintojen lisäämiseksi. AutoIt jaetaan myös ilmaiseen SciTE -editoriin perustuvan IDE : n kanssa . Kääntäjä ja ohjeteksti ovat täysin integroituja ja tarjoavat de facto vakioympäristön AutoIt -ohjelmaa käyttäville kehittäjille.

Historia

Julkaisuaikataulu
1999 Tammikuu: Ensimmäinen AutoIt -versio (1.0)
Elokuu: AutoIt v2 ja AutoItX
Syyskuu: Ensimmäinen AutoIt -versio kääntäjällä
2000
2001
2002 Joulukuu: AutoIt v3 (julkinen beta)
2003
2004 Helmikuu: AutoIt v3 (vakaa)
2005
2006 Syyskuu: Auto3Lib käynnistyi
2007 Marraskuu: AutoIt v3.2.10.0 julkaistu, Auto3Lib sisällytetty AutoIt v3: een
2008 Toukokuu: AutoIt v3.2.12.0 julkaistiin, ja siihen on lisätty graafinen käyttöliittymä
Joulukuu: AutoIt (ja AutoItX) v3.3.0.0 julkaistiin
2009 Joulukuu: AutoIt v3.3.2.0 julkaistiin
2010 Tammikuu: AutoIt v3.3.4.0 julkaistiin
Maaliskuu: AutoIt v3.3.6.0 julkaistu
Huhtikuu: AutoIt v3.3.6.1 julkaistiin
2011 Joulukuu: AutoIt v3.3.8.0 julkaistiin
2012 Tammikuu: AutoIt v3.3.8.1 julkaistiin
2013 Joulukuu: AutoIt v3.3.10.0 julkaistu
2014 Kesäkuu: AutoIt v3.3.12.0 julkaistiin
2015 Heinäkuu: AutoIt v3.3.14.0 ja v3.3.14.1 julkaistiin
Syyskuu: AutoIt v3.3.14.2 julkaistiin
2016
2017
2018 Helmikuu: AutoIt v3.3.14.3 julkaistiin
Maaliskuu: AutoIt v3.3.14.5 julkaistu

AutoIt1 ja AutoIt2 olivat suljetun lähdekoodin projekteja, ja niillä oli hyvin erilainen syntaksi kuin AutoIt3: lla, jonka syntaksi muistuttaa enemmän VBScriptiä ja BASICia.

AutoIt3 oli alun perin ilmainen ja avoimen lähdekoodin lisenssi GNU General Public License -ehtojen mukaisesti , ja sen alkuperäinen julkinen julkaisu oli 3.0.100 helmikuussa 2004, ja se julkaisi avoimen lähdekoodin maaliskuussa 2004 ja elokuussa 2004. Versio 3.0.102, julkaistiin elokuussa 2004, oli alun perin avoimen lähdekoodin, mutta tammikuuhun 2005 mennessä se jaettiin suljettuna. Myöhemmin julkaistut versiot 3.1.0 helmikuusta 2005 alkaen olivat kaikki suljetun lähdekoodin julkaisuja. Versio 3.1.0 oli myös ensimmäinen julkaisu, joka tuki GUI -skriptejä.

Aiheeseen liittyviä projekteja

Ilmainen ja avoimen lähdekoodin AutoHotkey- projekti johti 29 toimintoaan AutoIt 3.1 -lähdekoodista. AutoHotKey -syntaksi eroaa melko paljon AutoIt3 -syntaksista ja muistuttaa pikemminkin AutoIt2 -syntaksia.

ominaisuudet

Image
AU3 -tiedostomuodon kuvake

AutoIt -ohjelmaa käytetään yleensä apuohjelmistojen tuottamiseen Microsoft Windows -käyttöjärjestelmään ja rutiinitehtävien, kuten järjestelmänhallinnan, seurannan, ylläpidon tai ohjelmiston asennuksen, automatisointiin. Sitä käytetään myös simuloimaan käyttäjien vuorovaikutusta, jolloin sovellus "ohjataan" (automaattisen lomakkeen syöttämisen, näppäinpainallusten, hiiren napsautusten ja niin edelleen) avulla tekemään asioita AutoIt -komentosarjan avulla.

AutoIt-tekniikkaa voidaan käyttää myös edullisissa laboratorioautomaatioissa . Sovelluksia ovat instrumenttien synkronointi, hälytysten valvonta ja tulosten kerääminen. Laitteita, kuten CNC-reitittimiä ja 3D-tulostimia, voidaan myös ohjata.

  • Skriptikieli BASIC-kaltaisella rakenteella Windowsille
  • Kääntäminen itsenäisiksi suoritettaviksi tiedostoiksi
  • Lisäkirjastoja ja moduuleja tietyille sovelluksille
  • Tukee TCP- ja UDP -protokollia
  • Tukee komponenttiobjektimallia (COM)
  • Kutsutoiminnot DLL -tiedostoissa
  • Suorita konsolisovellukset ja käytä vakiovirtoja
  • Sisällytä datatiedostot koottuun tiedostoon, joka puretaan suoritettaessa
  • Luo graafisia käyttöliittymiä , mukaan lukien viesti- ja syöttölaatikot
  • Toista ääniä, keskeytä, jatka, pysäytä, etsi, hanki äänen nykyinen sijainti ja saat äänen pituuden
  • Simuloi hiiren liikkeitä
  • Käsittele ikkunoita ja prosesseja
  • Automatisoi käyttäjien syötteiden ja näppäinpainallusten lähettäminen sovelluksiin sekä sovelluksen yksittäisiin ohjaimiin
  • Unicode -tuki versiosta 3.2.4.0
  • 64-bittisen koodin tuki versiosta 3.2.10.0
  • Tukee säännöllisiä lausekkeita
  • Yhteensopiva käyttäjätilien valvonnan kanssa
  • Objektisuunnittelu kirjaston kautta

Esimerkkejä

Hei maailma

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

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

Windows -laskimen automatisointi

; 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]")

Etsi keskiarvo

; 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

Katso myös

Viitteet

Ulkoiset linkit