AutoIt

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 7. oktober 2017; checks kræver 24 redigeringer .
AutoIt
Sprog klasse software og scriptsprog
Udførelsestype fortolket, kompileret
Dukkede op i januar 1999
Forfatter Jonathan Bennet og AutoIt Team
Filtypenavn _ .au3eller.a3x
Frigøre 3.3.16 ( 6. marts 2022 )
Blev påvirket GRUNDLÆGGENDE
påvirket autohotkey
Licens gratis software [1]
Internet side autoitscript.com
Platform Microsoft Windows
OS Microsoft Windows
 Mediefiler på Wikimedia Commons

AutoIt  er et gratis sprog til automatisering af opgaver i Microsoft Windows . Giver dig mulighed for at oprette automatiseringsscripts (nogle gange kaldet makroer ), der kan simulere brugerhandlinger, såsom tekstinput og handlinger på system- og programkontroller, samt reagere på hændelser (for eksempel udføre bestemte handlinger, når et vindue med en bestemt titel er åbnet). Sådanne scripts er nyttige til at udføre ofte gentagne opgaver, såsom at installere identiske sæt programmer på et stort antal computere.

AutoIt-sproget er enkelt, har en ydre lighed med Visual Basic og er i generel funktionalitet tæt på almindelige sprog, men adskiller sig ved tilstedeværelsen af ​​indbyggede værktøjer, der giver nem adgang til hændelser, processer, system- og programgrafiske grænsefladeelementer . Indeholder en GUI-ramme, der giver dig mulighed for at bruge simple Windows-formularer med typiske grafiske komponenter i scripts.

Sprog

Selve AutoIt-sproget er tæt på moderne versioner af BASIC : det er et imperativt sprog med et lille sæt typiske syntaktiske konstruktioner og en enkel struktur. To typer variabler understøttes: simple (skalære) variabler og arrays. Simple variable har en varianttype, det vil sige, at de kan indeholde værdier af enhver understøttet type. Arrays i AutoIt er dynamiske og heterogene (de kan ændre størrelse og indeholde værdier af enhver type i celler), multidimensionelle (op til 64 indekser) arrays understøttes. Sættet af datatyper er begrænset: disse er strenge, tal, binære data og logiske (booleske) værdier.

Tilgængelige syntakser omfatter tre varianter af den betingede sætning, loops og en brugerdefineret funktionserklæring (funktionsindlejring understøttes ikke). Der er ingen modularitet som sådan i sproget, den erstattes af muligheden for direkte tekstinkludering af nogle filer i andre ved hjælp af en C-lignende instruktion #include.

Systembiblioteket indeholder en lang række funktioner til forskellige formål, herunder til arbejde med strenge, beregninger, filadgang, netværk, arbejde med vektor- og rastergrafik og data i forskellige multimedieformater. Biblioteket inkluderer en enkel GUI-ramme, der gør det nemt at oprette og bruge typiske Windows-formularer med et standardsæt af kontroller. Sidstnævnte funktion gør det muligt at bruge AutoIt blot som et sprog til at skabe simple Windows-programmer med en standard grafisk grænseflade. Men den vigtigste funktion ved AutoIt er understøttelse af en række specifikke funktioner, der giver adgang til Windows-systemet, dets indstillinger og den grafiske brugergrænseflade, som giver dig mulighed for at simulere tastetryk, musebevægelser og manipulationer med vinduer, kontroller, overvåge systemhændelser og reagere på dem. Dette giver dig mulighed for at automatisere Windows-brugeropgaver på en måde, som ikke er mulig eller vanskelig i andre programmeringssprog. Især følgende funktioner understøttes:

Om programmet

AutoIt inkluderer både 32- og 64-bit versioner af tolken og er kompatibel med alle versioner af Windows, der starter med Windows XP , både 32-bit og 64-bit (versioner til og med 3.3.8.1 er kompatible med Windows 2000 , og versioner til og med 3.2.12.1 inklusive - også med Windows 9x og Windows NT 4.0 ). AutoIt-tolken er lille og kræver ikke installation. Hovedfilen er nok til at fungere, og enhver teksteditor er nok til at oprette et script. Der er også en AutoItX-komponent - en kombineret version i form af COM og DLL , der giver dig mulighed for at integrere AutoIt-fortolkeren i programmer skrevet på andre sprog. En anden vigtig komponent i systemet er et separat værktøj, der giver dig mulighed for interaktivt at vælge visuelle grænsefladeelementer (vinduer, individuelle kontroller) og få oplysninger om dem, især vindues- og kontrolidentifikatorer. Disse oplysninger er nødvendige for at skabe scripts, der simulerer brugerens arbejde med systemets og programmernes grafiske grænseflade.

I den fulde version ( AutoIt Full Installation ) distribueres AutoIt med et integreret udviklingsmiljø baseret på den gratis editor SciTE . Også på den officielle hjemmeside kan du downloade en udvidet samling af editoren med yderligere funktioner [2] . Compileren, hjælpeprogrammerne og referencematerialerne er fuldt integrerede, hvilket gør editoren til et standardmiljø for udviklere, der bruger AutoIt. AutoIt-kompileren og SciTE-udviklingsmiljøet er nemme at installere og kræver ikke yderligere indstillinger (for korrekt understøttelse af det russiske sprog i editoren skal du fjerne en linje i konfigurationsfilen). Der er komplet dokumentation for AutoIt og SciTE på russisk [3] [4] , og muligheden for at installere den fulde version af editoren.

Fortolkeren er kompakt, fungerer på alle versioner af Windows ud af æsken, uden eksterne .dll-biblioteker og registreringsdatabaseposter, hvilket giver dig mulighed for sikkert at bruge den . Det er også understøttet at kompilere et script til en selvstændig eksekverbar fil, der kan køres på egen hånd uden en fortolker eller eventuelle nødvendige biblioteker, mens det er muligt at inkludere yderligere filer i objektfilen, der vil blive udtrukket ved opstart.

For at forenkle udviklingen af ​​grafiske grænseflader er der en visuel formulareditor Koda FormDesigner Arkiveret 27. maj 2009 på Wayback Machine , som har en grænseflade, der ligner Delphi IDE . Understøtter visuel oprettelse og ændring af alle dialogelementer, der er tilgængelige i AutoIt (knapper, inputfelter, menuer osv.)

Ansøgning

En populær brug af AutoIt er at udvikle hjælpeprogrammer til Microsoft Windows. Almindelige opgaver såsom webstedsovervågning, netværksovervågning, diskdefragmentering og backup kan automatiseres og kombineres til et tilpasset hjælpeprogram.

Ofte bruges AutoIt til at skabe bots til onlinespil . Bots giver dig mulighed for at automatisere nogle handlinger i spil, som et resultat, kan brugeren opnå det ønskede resultat hurtigere. Denne brug af Autoit er ilde set af fællesskabet, da det skaber et dårligt ry for programmet, men flere sådanne scripts kan findes på de officielle fora. Brugen af ​​bots betragtes som et modbydeligt spil af de fleste AutoIt-brugere, og du skal ikke forvente megen hjælp fra fællesskabet til at skabe dem. Mange fællesskabsmedlemmer overvejer slet ikke sådanne anmodninger.

Enkel syntaks og brede muligheder gør sproget populært blandt virusproducenter. Autoit har en enorm mængde malware skrevet på sig, som kaster en skygge af dens moralske karakter. Nogle antivirusprogrammer registrerer ethvert script, der er kompileret i Autoit, som malware. I betragtning af den relativt høje risiko anbefales det af sikkerhedsmæssige årsager kraftigt ikke at køre scripts hentet fra upålidelige kilder på din computer.

[5]

Versioner, support, licensering

AutoIt er gratis, men ikke gratis med hensyn til softwarelicenser. Kildekoden til AutoIt 3.1.0 i C++ er tilgængelig til download i AutoIt - arkivet Arkiveret 3. juli 2007 på Wayback Machine ; koden for yderligere versioner er lukket. Moderne versioner af AutoIt distribueres under EULA -licensen , som især forklarer opsigelsen af ​​support til dekompilering af scripts (da det udtrykkeligt er forbudt i denne licens) [6] .

AutoIt-kildekoden blev brugt til at oprette AutoHotkey -sproget . Det er udviklet af et lille team, men med aktiv støtte fra brugere over hele verden. Tredjepartssupport inkluderer, men er ikke begrænset til, hjælpefiler, eksempelprogrammer, supportfora, mailingliste, hjælpeprogrammer.

Den aktuelle version af sproget er tilgængelig for download Arkiveret 1. juli 2007 på Wayback Machine på projektets officielle hjemmeside, såvel som tidligere udgivelser. Et Wiki-system er tilgængeligt, projektets hjemmeside giver ret detaljeret dokumentation om systemet på mange sprog, og der opretholdes et forum med et aktivt brugerfællesskab.

Eksempel

Hello World-program:

;Viser et standardvindue med navnet "Eksempel", inskriptionen "Hej, verden!" og knappen OK. MsgBox ( 0 , "Eksempel" , "Hej verden!" ) ;

Oprettelse af en dialogboks:

;Viser en dialogboks med knapperne OK og Annuller. Hvis du klikker OK, afslutter du programmet. ;Tabulering i eksemplet er for læsbarheden. $WantExit = MsgBox ( 1 , "Spørgsmål" , "Vil du afslutte programmet?" ) Hvis $WantExit == 1 Afslut derefter EndIf

Automatisk lancering af Notesblok-programmet:

;Starter Notesblok, skriver tekst i vinduet, lukker programmet og annullerer lagringen. Kør ( "notepad.exe" ) WinWaitActive ( "Untitled - Notesblok" ) Send ( "Her er noget tekst." ) WinClose ( "Untitled - Notesblok" ) WinWaitActive ( "Notepad" ) Send ( "!N" )

Oprettelse af et simpelt ur

#include < GUIConstantsEx . au3 > ; Inkluder den angivne fil i det aktuelle script. ;- Vindu ------------------------------------ GUICreate ( "Clock" , 155 , 111 , 192 , 114 ) GUISetState () ;--------------------------------------- ;- Ur ---------- ------ -------------------------------------------- -- AdlibRegister ( "MainScript " , 400 ) ; Opdater ur $Clock = GUICtrlCreateLabel ( @HOUR & ":" & @MIN & ":" & @SEC , 50 , 20 ) ;--------------------------- -------------------------------------------------- ---- ;- Indstillinger ---------------------------- Mens 1 $nMsg = GUIGetMsg () Skift $nMsg Case $GUI_EVENT_CLOSE Afslut EndSwitch WEnd ;---- ------- ---------------------- ;- Tjek uret med computeren -------------- ---------- ------- Func MainScript () GUICtrlSetData ( $Clock , @HOUR & ":" & @MIN & ":" & @SEC ) EndFunc ;------ ---------- ------------------------------------------ -----------

Opret et vindue i midten af ​​skærmen.

#include < GuiConstants . au3 > #cs vCenterDialog #ce $Width = "500" $Height = "500" $cWidth = @DesktopWidth / 2 - $Width / 2 $cHeight = @DesktopHeight / 2 - $Height / 2 $Form = GUICreate ( "Dialog" , $Width , $Height , $cWidth , $cHeight )

AutoIt-fællesskab

Det officielle engelske forum er placeret på http://www.autoitscript.com/forum/ Arkiveret 11. juli 2007 på Wayback Machine . Der kan brugere dele deres scripts og funktioner, modtage teknisk support, rapportere fejl, komme med ideer og forslag og kommunikere med udviklere.

Der er også en hjemmeside for det russisktalende samfund Arkiveret 16. maj 2014 på Wayback Machine

Se også

Noter

  1. http://www.autoitscript.com/autoit3/docs/license.htm
  2. AutoIt Script Editor - AutoIt  (engelsk) , AutoIt . Arkiveret fra originalen den 19. marts 2018. Hentet 18. marts 2018.
  3. AutoIt Documentation Localization Arkiveret 23. februar 2011 på Wayback Machine 
  4. Russisksproget SciTE-forum på Ru-board . Hentet 13. marts 2022. Arkiveret fra originalen 26. august 2020.
  5. AutoIt og Malware - AutoIt Wiki . www.autoitscript.com . Hentet 3. juni 2022. Arkiveret fra originalen 19. juni 2022.
  6. Dekompilering_Ofte stillede spørgsmål . Hentet 1. marts 2019. Arkiveret fra originalen 1. marts 2019.

Links