AutoIt
| AutoIt
| |
|---|---|
|
| |
| Grunnleggende data
| |
| utvikler | Jonathan Bennett & team |
| Forlagsår | Januar 1999 |
| Gjeldende versjon | 3.3.14.5 (16. mars 2018) |
| operativsystem | Windows |
| programmeringsspråk | C ++ |
| kategori | Skriptspråk |
| Tillatelse | Gratisvare |
| Tysktalende | Ja |
| www.autoitscript.com | |
AutoIt er programvare for å utføre skript som hovedsakelig kan automatiseres prosesser under Microsoft Windows , men også komplette Windows-programmer kan skrives. AutoIt er freeware og kjører på NT , 2000 , XP , Vista , 7 , 8 og 10 . Opp til versjon 2 var det åpen kildekode, og fra versjon 3 ble deler av kildekoden publisert under en restriktiv lisens. Bare noen få dokumentasjonsfiler er tilgjengelig for øyeblikket. Programmet gir brukeren et BASIC- lignende skriptspråk . Den inneholder også en tolk og en kompilator som kjørbare filer ( exe-filer ) kan opprettes med; dette gjør at AutoIt-skript kan kjøres på datamaskiner som ikke har AutoIt installert.
funksjon
AutoIt-skript simulerer blant annet tastetrykk og museklikk . Sekvensen kan gjøres avhengig av at en bestemt prosess kjører eller er avsluttet, eller at et bestemt vindu aktiveres, åpnes eller lukkes. Windows kan også minimeres, skjules, aktiveres eller lukkes; Filer og kataloger kan kjøres, kopieres, flyttes, omdøpes eller slettes. Innholdet på utklippstavlen og registreringsdatabasen kan også redigeres. Med versjon 3 (per august 2008) er følgende operasjoner mulig:
- Oppretting av GUIer inkludert meldingsvinduer og inndatabokser
- Automatisk sending av brukerinngang og tastetrykk til applikasjoner samt individuell kontroll i applikasjoner
- Bruk av COM ( Component Object Modelling ) objekter
- Funksjonsanrop i en Win32 DLL
- Funksjonsanrop fra WinAPI
- Utførelse av konsollapplikasjoner og tilgang til standard datastrømmer
- Inkluderer filer i den kompilerte filen, som kan hentes ut på et definert tidspunkt
- Spill av lydfiler, pause, fortsett, stopp, søk, gjeldende avspillingsposisjon og lengde på lyden
- Utfør komplekse matteberegninger
- Kommunikasjon via TCP og UDP- protokoll
- Unicode-støtte fra versjon 3.2.4.0
- Støtte for ActiveX- prosesser ( WSH / VBScript ) med utvidelsen "AutoItX"
- Databasetilgang (for eksempel til SQLite [i installasjonspakken])
- Automatisering av Internet Explorer
- Automatisering av Microsoft Word og Microsoft Excel
Med versjon 3.2 er AutoIt utvidet kraftig, og mange programfeil er eliminert. I tillegg kan skript lagres som a3x-filer, og GUI-funksjonene er forbedret.
Eksempel på AutoIt-skript
$sName = InputBox("Fenstertitel", "Geben Sie hier Ihren Namen ein!")
Det vises en inndataboks som ber deg om å skrive inn navnet ditt. Navnet $sNamelagres i variabelen .
MsgBox(64, "Fenstertitel", "Hallo " & $sName & "!")
Med denne kommandoen vises en meldingsboks som $sNamesender ut innholdet til variabelen . Verdien 64 identifiserer vinduet som en “infoboks” (advarsler, spørsmål eller feilmeldinger er også mulig).
Eksempel på et avansert AutoIt-skript
#cs Startet einen Kommentar-Block
Standard-Präfixe für Variablen:
- $h - Handle von z. B. einem Fenster oder einer Datei
- $id - ID's von Controls, wie z. B. Buttons und Eingabefelder
- $s - Strings (Zeichenketten)
- $i - Integers (Ganzzahlen)
Variablennamen werden normalerweise in Englisch verfasst! (Kein Standard)
#ce ; Beendet einen Kommentar-Block
#include <FTPEx.au3> ; Einbinden von mehreren vordefinierten Scripten.
#include <GUIConstantsEx.au3>
;############# Änderbare Daten ################
$sIP = "IP von FTP-Server"
$sUser = "Benutzername vom FTP-Benutzer"
$sPassword = "Passwort vom FTP-Benutzer"
$sFTP_Path = "Pfad auf dem Server"
;##############################################
$hGUI = GUICreate("TestGUI", 445, 339) ; In der Mitte des Bildschirms wird mit der X-Koordinate 445, und der Y-Koordinate 339 ein Fenster gezeichnet.
GUISetBkColor(0xBFCDDB) ; Die Hintergrundfarbe wird vom Standard geändert.
$idSend = GUICtrlCreateButton("Versenden", 0, 288, 203, 49) ; Der "Versenden"-Knopf wird erstellt.
$idEdit = GUICtrlCreateEdit("", 0, 0, 441, 289) ; Ein Eingabefeld wird erstellt.
GUICtrlSetData($idEdit, "Beispiel-Text" & @CRLF & "Nächste Zeile") ; Ein Text wird in das Eingabefeld geschrieben. @CRLF markiert einen Zeilenumbruch.
GUICtrlSetBkColor($idEdit, 0xC0C0C0) ; Die Hintergrundfarbe des Eingabefeldes wird geändert.
GUISetState(@SW_SHOW) ; Das Fenster wird angezeigt.
While 1 ; Eine While-Schleife wird geöffnet, die immer wieder bestimmte Sachen abfragt. Endlosschleife, in diesem Fall die "Messageloop" des Fensters.
$iMsg = GUIGetMsg() ; Die Variable die abgefragt werden soll, wird immer wieder neu erstellt. (Einmal pro durchlauf der Schleife.)
Switch $iMsg ; Die Variable wird als Ereignisauslöser definiert.
Case $GUI_EVENT_CLOSE ; Falls der "Schließenknopf"(X oben rechts in der Ecke) gedrückt wird,
Exit ; beendet sich das Script.
Case $idSend ; Falls der "Versenden"-Button gedrückt wird,
_Put_on_FTP() ; wird die "_Put_on_FTP" Funktion ausgeführt.
EndSwitch ; Die Abfrage der Variable $nMsg wird beendet.
WEnd ; Markiert das Ende einer "While"-Schleife(n) definition. Falls die Schleife endet, arbeitet das Skript von hier weiter.
Func _Put_on_FTP() ; Benutzerdefinierte Funktionen haben normalerweise das Präfix "_" und der Name sollte auch in Englisch gehalten sein.
Local $sFilePath = "ftp.txt" ; Eine lokale Variable wird deklariert und ein Wert zugewiesen (diese ist nur in dieser Funktion verfügbar).
$hFile = FileOpen($sFilePath, 10) ; Eine Datei wird zum Schreiben geöffnet, und falls sie nicht existiert, wird diese erstellt.
$sText = GUICtrlRead($idEdit) ; Der Text aus dem Eingabefeld wird eingelesen.
FileWrite($hFile, $sText) ; In die zuvor geöffnete Datei wird der Text aus der Variablen $sText geschrieben.
FileClose($hFile) ; Die Datei wird geschlossen und die Ressourcen wird freigegeben.
$hFTP = _FTP_Open("TestFTP") ; Die FTP-Sitzung wird gestartet.
$hFTP_Connection = _FTP_Connect($hFTP, $sIP, $sUser, $sPassword) ; Eine FTP-Verbindung zum angegebenen Server wird aufgebaut.
If @error <> 0 Then ; Falls @error ungleich 0 ist (ein Fehler ist aufgetreten),
MsgBox(0, "Error", "Der FTP-Server scheint nicht erreichbar zu sein.") ; Eine Fehlermeldung wird ausgegeben.
ElseIf @error = 0 Then ; Falls @error gleich 0 ist (kein Fehler ist aufgetreten),
_FTP_FilePut($hFTP_Connection, $sFilePath, $sFTP_Path) ; wird Die Testdatei auf den Server geschrieben.
If @error Then ; Falls es einen Fehler gibt, ...
MsgBox(0, "Error", "Es trat ein Fehler beim Übertragen auf.") ; ... wird eine Fehlermeldung angezeigt, ansonsten ...
Else ; Wenn kein Fehler aufgetreten ist,
MsgBox(0, "Erfolg", "Die Datei wurde erfolgreich übertragen.") ; ... war die Operation erfolgreich.
EndIf ; Die If-Abfrage wird geschlossen.
EndIf ; Die erste If-Abfrage wird geschlossen.
_FTP_Close($hFTP) ; Die FTP-Verbindung wird geschlossen und die FTP-Sitzung wird beendet.
FileDelete($sFilePath) ; Die temporäre Datei wird gelöscht.
Return ; Funktion beenden und mit der eigentlichen Skript-Ausführung fortfahren.
EndFunc ; Markiert das Ende einer Funktion.
Utvidelser og tilleggsprogrammer
- Det er en tilpasset versjon ("SciTE4AutoIt3") av SciTE som et integrert utviklingsgrensesnitt (IDE) for AutoIt. Freeware-programredigereren støtter syntaksutheving samt automatisk fullføring og noen makroer for å lage ofte brukte syntakselementer. SciTE4AutoIt3 kan lastes ned gratis fra AutoIt-hjemmesiden.
- Tallrike tilleggsfunksjoner er tilgjengelige via såkalte brukerdefinerte funksjoner (UDFer) eller inkluderer; Takket være utvidelser opprettet av samfunnet, inkluderer det nåværende funksjonsområdet mye mer enn listen ovenfor.
- KODA-Form-Designer muliggjør forenklet oppretting av grafiske grensesnitt (GUI, Grafiske brukergrensesnitt) for AutoIt-skript.
- Tidy "rydder opp" et AutoIt-skript ved å korrigere innrykk, bruk av store bokstaver, kommentarer og mer.
- Med CodeWizard kan meldingsbokser (meldingsvinduer), inndatabokser (inndatavinduer) og mye mer genereres. Det er en online versjon av meldingsboksen generator.
- AutoIt Window Info er en utvidelse som brukes til å lese informasjon fra et vindu eller musepekeren (f.eks. Vindu eller museposisjon, pikselfarger, kontrollkoordinater).
- Punktene nevnt ovenfor er alle allerede integrert i SciTE4AutoIt3.
Se også
- AutoHotkey - Alternativ programvare under en åpen kildekode-lisens, som er hentet fra versjon 2 av AutoIt
weblenker
- AutoIt-hjemmesiden
- Tysk AutoIt-fellesskap
- Det er også en online versjon av den tyske hjelpesettingen.
- Opplæringen
- Wikibook om Autoit (fremdeles veldig ufullstendig)
Individuelle bevis
- ↑ Jon: AutoIt-kildekode. I: AutoItScript Forum. 8. februar 2005, åpnet 4. september 2018 .
- ↑ Endringslogg