AutoIt - AutoIt

AutoIt
Autoitlogo.png
Exemplu AutoIT script.png
Paradigmă Orientat pe obiecte , imperativ , funcțional , procedural , reflexiv
Proiectat de Jonathan Bennett
Dezvoltator AutoIt Consulting Ltd.
A apărut prima dată Ianuarie 1999 ; Acum 22 de ani ( 01.01.1999 )
Versiune stabila
3.3.14.5 / 16 martie 2018 ; Acum 3 ani ( 16.03.2018 )
Previzualizare lansare
3.3.15.4 Beta / 12 iunie 2021 ; acum 4 luni ( 12.06.2021 )
Platformă IA-32 și x64
OS Windows XP SP3 și versiunile ulterioare
Windows Server 2003 și versiunile ulterioare
Licență Freeware
Extensii de nume de fișier .au3
Site-ul web www .autoitscript .com
Influențată de
DE BAZĂ

AutoIt / ɔː t ɪ t / este un limbaj de programare freeware pentru Microsoft Windows . În cea mai recentă versiune, a fost destinat în primul rând să creeze scripturi de automatizare (uneori numite macrocomenzi ) pentru programele Microsoft Windows, dar de atunci a crescut pentru a include îmbunătățiri atât în ​​proiectarea limbajului de programare, cât și în funcționalitatea generală.

Limbaj de scripting în AutoIt 1 și 2 a fost condus-declarație și destinat în primul rând pentru simularea interacțiunea cu utilizatorul. Începând cu versiunea 3, sintaxa AutoIt este similară cu cea găsită în familia de limbi BASIC . În această formă, AutoIt este un limbaj de programare de uz general, a treia generație, cu un model de date clasic și un tip de date variantă care poate stoca mai multe tipuri de date, inclusiv tablouri.

Un script de automatizare AutoIt poate fi convertit într-un executabil comprimat, independent, care poate fi rulat pe computere chiar dacă nu au instalat interpretul AutoIt. O gamă largă de biblioteci de funcții (cunoscute sub numele de UDF-uri sau „Funcții definite de utilizator”) sunt, de asemenea, incluse ca standard sau sunt disponibile de pe site pentru a adăuga funcționalități specializate. AutoIt este, de asemenea, distribuit cu un IDE bazat pe editorul gratuit SciTE . Compilatorul și textul de ajutor sunt complet integrate și oferă un mediu standard de facto pentru dezvoltatorii care folosesc AutoIt.

Istorie

Eliberați cronologia
1999 Ianuarie: Prima versiune AutoIt (1.0)
August: AutoIt v2 și AutoItX
Septembrie: prima versiune AutoIt cu compilator
2000
2001
2002 Decembrie: AutoIt v3 (beta publică)
2003
2004 Februarie: AutoIt v3 (Stabil)
2005
2006 Septembrie: a început Auto3Lib
2007 Noiembrie: lansarea AutoIt v3.2.10.0, Auto3Lib încorporat în AutoIt v3
2008 Mai: lansarea AutoIt v3.2.12.0, care încorporează funcționalitate GUI adăugată
Decembrie: lansarea AutoIt (și AutoItX) v3.3.0.0
2009 Decembrie: lansarea AutoIt v3.3.2.0
2010 Ianuarie: lansarea AutoIt v3.3.4.0
Martie: lansarea AutoIt v3.3.6.0
Aprilie: lansarea AutoIt v3.3.6.1
2011 Decembrie: lansarea AutoIt v3.3.8.0
2012 Ianuarie: lansarea AutoIt v3.3.8.1
2013 Decembrie: lansarea AutoIt v3.3.10.0
2014 Iunie: lansarea AutoIt v3.3.12.0
2015 Iulie: lansarea AutoIt v3.3.14.0 și v3.3.14.1
Septembrie: lansarea AutoIt v3.3.14.2
2016
2017
2018 Februarie: lansarea AutoIt v3.3.14.3
Martie: lansarea AutoIt v3.3.14.5

AutoIt1 și AutoIt2 erau proiecte cu sursă închisă și aveau o sintaxă foarte diferită de AutoIt3, a cărei sintaxă seamănă mai mult cu VBScript și BASIC.

AutoIt3 a fost inițial gratuit și open-source , licențiat în condițiile licenței publice generale GNU , cu versiunea publică inițială 3.0.100 în februarie 2004 și a avut versiuni open-source în martie 2004 și august 2004. Versiunea 3.0.102, lansat în august 2004, a fost inițial open-source, dar până în ianuarie 2005 a fost distribuit ca open-source. Versiunile ulterioare, începând cu versiunea 3.1.0 din februarie 2005, au fost toate cu sursă închisă. Versiunea 3.1.0 a fost, de asemenea, prima versiune cu suport pentru scripturile GUI.

Proiecte asociate

Proiectul AutoHotkey gratuit și open-source a derivat 29 din funcțiile sale din codul sursă AutoIt 3.1. Sintaxa AutoHotKey este destul de diferită de sintaxa AutoIt3 și seamănă mai degrabă cu sintaxa AutoIt2.

Caracteristici

Image
Pictogramă format de fișier AU3

AutoIt este de obicei utilizat pentru a produce software utilitar pentru Microsoft Windows și pentru a automatiza sarcinile de rutină, cum ar fi gestionarea sistemelor, monitorizarea, întreținerea sau instalarea software-ului. Este, de asemenea, utilizat pentru a simula interacțiunea utilizatorului, prin care o aplicație este „condusă” (prin introducerea automată a formularului, prin apăsarea tastelor, clicuri de mouse și așa mai departe) pentru a face lucrurile printr-un script AutoIt.

AutoIt poate fi utilizat și în automatizarea de laborator la prețuri reduse . Aplicațiile includ sincronizarea instrumentelor, monitorizarea alarmelor și colectarea rezultatelor. Dispozitive precum routerele CNC și imprimantele 3D pot fi, de asemenea, controlate.

  • Limbaj de script cu structură de tip BASIC pentru Windows
  • Compilarea în executabile independente
  • Biblioteci și module suplimentare pentru aplicații specifice
  • Suporta TCP și UDP protocoale
  • Suportă modelul de obiecte componente (COM)
  • Apelați funcții în fișiere DLL
  • Rulați aplicații pentru consolă și accesați fluxurile standard
  • Includeți fișiere de date în fișierul compilat pentru a fi extrase în timpul rulării
  • Creați interfețe grafice de utilizator , inclusiv mesaje și casete de introducere
  • Redați sunete, întrerupeți, reluați, opriți, căutați, obțineți poziția actuală a sunetului și obțineți lungimea sunetului
  • Simulează mișcările mouse-ului
  • Manipulați ferestrele și procesele
  • Automatizați trimiterea de date de intrare și de apăsare a tastelor către aplicații, precum și către controalele individuale din cadrul unei aplicații
  • Suport Unicode de la versiunea 3.2.4.0
  • Suport pentru coduri pe 64 de biți de la versiunea 3.2.10.0
  • Suportă expresii regulate
  • Compatibil cu Controlul contului de utilizator
  • Proiectare orientată obiect prin intermediul unei biblioteci

Exemple

Salut Lume

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

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

Automatizarea calculatorului Windows

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

Găsiți o medie

; 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

Vezi si

Referințe

linkuri externe