AutoIt

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 7 oktober 2017; kontroller kräver 24 redigeringar .
AutoIt
Språkklass programvara och skriptspråk
Utförandetyp tolkat, sammanställt
Framträdde i januari 1999
Författare Jonathan Bennet och AutoIt Team
Filtillägg _ .au3eller.a3x
Släpp 3.3.16 ( 6 mars 2022 )
Blivit påverkad GRUNDLÄGGANDE
påverkas autosnabbtangenten
Licens fri programvara [1]
Hemsida autoitscript.com
Plattform Microsoft Windows
OS Microsoft Windows
 Mediafiler på Wikimedia Commons

AutoIt  är ett gratis språk för att automatisera uppgifter i Microsoft Windows . Låter dig skapa automatiseringsskript (ibland kallade makron ) som kan simulera användaråtgärder, såsom textinmatning och åtgärder på system- och programkontroller, samt svara på händelser (till exempel utföra vissa åtgärder när ett fönster med en viss titel är öppnad). Sådana skript är användbara för att utföra ofta upprepade uppgifter, som att installera identiska uppsättningar program på ett stort antal datorer.

AutoIt-språket är enkelt, har en extern likhet med Visual Basic och ligger i allmän funktionalitet nära allmänna språk, men skiljer sig i närvaron av inbyggda verktyg som ger enkel åtkomst till händelser, processer, system- och programgrafiska gränssnittselement . Innehåller ett GUI-ramverk som låter dig använda enkla Windows-formulär med typiska grafiska komponenter i skript.

Språk

Själva AutoIt-språket ligger nära moderna versioner av BASIC : det är ett imperativt språk med en liten uppsättning typiska syntaktiska konstruktioner och en enkel struktur. Två typer av variabler stöds: enkla (skalära) variabler och arrayer. Enkla variabler har en varianttyp, det vill säga de kan innehålla värden av vilken typ som helst. Arrayer i AutoIt är dynamiska och heterogena (de kan ändra storlek och innehålla värden av vilken typ som helst i celler), flerdimensionella (upp till 64 index) arrayer stöds. Uppsättningen av datatyper är begränsad: dessa är strängar, tal, binära data och logiska (booleska) värden.

Tillgängliga syntaxer inkluderar tre varianter av villkorssatsen, loopar och en användardefinierad funktionsdeklaration (funktionskapsling stöds inte). Det finns ingen modularitet som sådan i språket, den ersätts av möjligheten till direkt textinkludering av vissa filer i andra med en C-liknande instruktion #include.

Systembiblioteket innehåller ett brett utbud av funktioner för olika ändamål, bland annat för att arbeta med strängar, beräkningar, filåtkomst, nätverk, arbete med vektor- och rastergrafik och data i olika multimediaformat. Biblioteket innehåller ett enkelt GUI-ramverk som gör det enkelt att skapa och använda typiska Windows-formulär med en standarduppsättning kontroller. Den senare funktionen gör att AutoIt enkelt kan användas som ett språk för att skapa enkla Windows-program med ett standardgrafiskt gränssnitt. Men den viktigaste funktionen hos AutoIt är stöd för ett antal specifika funktioner som ger tillgång till Windows-systemet, dess inställningar och det grafiska användargränssnittet, som låter dig simulera tangenttryckningar, musrörelser och manipulationer med fönster, kontroller, övervaka systemhändelser och svara på dem. Detta gör att du kan automatisera Windows-användaruppgifter på ett sätt som inte är möjligt eller svårt i andra programmeringsspråk. I synnerhet stöds följande funktioner:

Om programmet

AutoIt inkluderar både 32- och 64-bitarsversioner av tolken och är kompatibel med alla versioner av Windows som börjar med Windows XP , både 32-bitars och 64-bitars (versioner upp till och inklusive 3.3.8.1 är kompatibla med Windows 2000 , och versioner till och med 3.2.12.1 inklusive - även med Windows 9x och Windows NT 4.0 ). AutoIt-tolken är liten och kräver ingen installation. Huvudfilen räcker för att fungera, och vilken textredigerare som helst räcker för att skapa ett skript. Det finns också en AutoItX-komponent - en kombinerad version i form av COM och DLL som låter dig integrera AutoIt-tolken i program skrivna på andra språk. En annan viktig komponent i systemet är ett separat verktyg som låter dig interaktivt välja visuella gränssnittselement (fönster, individuella kontroller) och få information om dem, särskilt fönster- och kontrollidentifierare. Denna information är nödvändig för att skapa skript som simulerar användarens arbete med systemets och programmens grafiska gränssnitt.

I den fullständiga versionen ( AutoIt Full Installation ) distribueras AutoIt med en integrerad utvecklingsmiljö baserad på den kostnadsfria editorn SciTE . Också på den officiella webbplatsen kan du ladda ner en utökad sammansättning av editorn med ytterligare funktioner [2] . Kompilatorn, hjälpverktygen och referensmaterialet är helt integrerade, vilket gör editorn till en standardmiljö för utvecklare som använder AutoIt. AutoIt-kompilatorn och SciTE-utvecklingsmiljön är enkla att installera och kräver inga ytterligare inställningar (för korrekt stöd för det ryska språket i editorn måste du avkommentera en rad i konfigurationsfilen). Det finns komplett dokumentation för AutoIt och SciTE på ryska [3] [4] , och möjligheten att installera den fullständiga versionen av editorn.

Tolken är kompakt, fungerar på alla versioner av Windows direkt, utan externa .dll-bibliotek och registerposter, vilket gör att du säkert kan använda den . Det stöds också för att kompilera ett skript till en fristående körbar fil som kan köras på egen hand utan tolk eller nödvändiga bibliotek, medan det är möjligt att inkludera ytterligare filer i objektfilen som kommer att extraheras vid start.

För att förenkla utvecklingen av grafiska gränssnitt finns en visuell formredigerare Koda FormDesigner Arkiverad 27 maj 2009 på Wayback Machine , som har ett gränssnitt som liknar Delphi IDE . Stöder visuellt skapande och modifiering av alla dialogelement som är tillgängliga i AutoIt (knappar, inmatningsfält, menyer, etc.)

Applikation

En populär användning av AutoIt är att utveckla verktyg för Microsoft Windows. Vanliga uppgifter som webbplatsövervakning, nätverksövervakning, diskdefragmentering och säkerhetskopiering kan automatiseras och kombineras till ett anpassat verktyg.

Ofta används AutoIt för att skapa bots för onlinespel . Bots låter dig automatisera vissa åtgärder i spel, som ett resultat kan användaren uppnå önskat resultat snabbare. Denna användning av Autoit är ogillad av communityn eftersom det skapar ett dåligt rykte för programmet, men flera sådana skript kan hittas på de officiella forumen. Användningen av bots anses vara ett fult spel av de flesta AutoIt-användare, och du bör inte förvänta dig mycket hjälp från gemenskapen för att skapa dem. Många medlemmar i samhället överväger inte sådana förfrågningar alls.

Enkel syntax och breda möjligheter gör språket populärt bland virustillverkare. Autoit har en enorm mängd skadlig programvara skriven på sig, vilket kastar en skugga över dess moraliska karaktär. Vissa antivirusprogram upptäcker alla skript som kompilerats i Autoit som skadlig programvara. Med tanke på den relativt höga risken är det av säkerhetsskäl starkt rekommenderat att inte köra skript som erhållits från opålitliga källor på din dator.

[5]

Versioner, support, licensiering

AutoIt är gratis, men inte gratis när det gäller mjukvarulicenser. Källkoden för AutoIt 3.1.0 i C++ är tillgänglig för nedladdning i AutoIt- arkivet Arkiverad 3 juli 2007 på Wayback Machine ; koden för ytterligare versioner är stängd. Moderna versioner av AutoIt distribueras under EULA -licensen , som i synnerhet förklarar upphörandet av stödet för dekompilering av skript (eftersom det uttryckligen är förbjudet enligt denna licens) [6] .

AutoIt-källkoden användes för att skapa AutoHotkey- språket . Det utvecklades av ett litet team, men med aktivt stöd från användare över hela världen. Tredjepartssupport inkluderar, men är inte begränsat till, hjälpfiler, exempelprogram, supportforum, e-postlista, verktyg.

Den aktuella versionen av språket är tillgänglig för nedladdning Arkiverad 1 juli 2007 på Wayback Machine på projektets officiella webbplats, såväl som tidigare utgåvor. Ett Wiki-system finns tillgängligt, projektets webbplats tillhandahåller ganska detaljerad dokumentation om systemet på många språk, och ett forum med en aktiv användargemenskap upprätthålls.

Exempel

Hello World-program:

;Visar ett standardfönster med namnet "Exempel", inskriptionen "Hej, värld!" och OK-knappen. MsgBox ( 0 , "Exempel" , "Hej världen!" ) ;

Skapa en dialogruta:

;Visar en dialogruta med knapparna OK och Avbryt. Om du klickar på OK, avslutar du programmet. ;Tabulering i exemplet är för läsbarhet. $WantExit = MsgBox ( 1 , "Fråga" , "Vill du avsluta programmet?" ) Om $ WantExit == 1 Avsluta EndIf

Automatisk start av Notepad-programmet:

;Startar Anteckningar, skriver text i sitt fönster, stänger programmet, avbryter lagringen. Kör ( "notepad.exe" ) WinWaitActive ( "Untitled - Notepad" ) Skicka ( "Här är lite text." ) WinClose ( "Untitled - Notepad" ) WinWaitActive ( "Anteckningar" ) Skicka ( "!N" )

Skapa en enkel klocka

#include < GUIConstantsEx . au3 > ; Inkludera den angivna filen i det aktuella skriptet. ;- Fönster ------------------------------------ GUICreate ( "Clock" , 155 , 111 , 192 , 114 ) GUISetState () ;--------------------------------------- ;- Klocka ---------- ------ -------------------------------------------- -- AdlibRegister ( "MainScript " , 400 ) ; Uppdatera klockan $Clock = GUICtrlCreateLabel ( @HOUR & ":" & @MIN & ":" & @SEC , 50 , 20 ) ;--------------------------- -------------------------------------------------- ---- ;- Inställningar ---------------------------- Medan 1 $nMsg = GUIGetMsg () Byt $nMsg Fall $GUI_EVENT_CLOSE Avsluta EndSwitch WEnd ;---- ------- ---------------------- ;- Kontrollerar klockan med datorn -------------- ---------- ------- Func MainScript () GUICtrlSetData ( $Clock , @HOUR & ":" & @MIN & ":" & @SEC ) EndFunc ;------ ---------- ------------------------------------------ -----------

Skapa ett fönster i mitten av displayen.

#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 Community

Det officiella engelska forumet finns på http://www.autoitscript.com/forum/ Arkiverad 11 juli 2007 på Wayback Machine . Där kan användare dela sina skript och funktioner, få teknisk support, rapportera buggar, komma med idéer och förslag och kommunicera med utvecklare.

Det finns också en webbplats för det rysktalande samhället Arkiverad 16 maj 2014 på Wayback Machine

Se även

Anteckningar

  1. http://www.autoitscript.com/autoit3/docs/license.htm
  2. AutoIt Script Editor - AutoIt  (engelska) , AutoIt . Arkiverad från originalet den 19 mars 2018. Hämtad 18 mars 2018.
  3. AutoIt Documentation Localization Arkiverad 23 februari 2011 på Wayback Machine 
  4. Ryskspråkigt SciTE-forum på Ru-board . Hämtad 13 mars 2022. Arkiverad från originalet 26 augusti 2020.
  5. AutoIt och skadlig programvara - AutoIt Wiki . www.autoitscript.com . Hämtad 3 juni 2022. Arkiverad från originalet 19 juni 2022.
  6. Decompiling_FAQ . Hämtad 1 mars 2019. Arkiverad från originalet 1 mars 2019.

Länkar