Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding > Coding Tutorials
You last visited: Today at 06:57

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[AutoIt]lernen leicht gemacht (by CrazyMc1234)

Discussion on [AutoIt]lernen leicht gemacht (by CrazyMc1234) within the Coding Tutorials forum part of the General Coding category.

Reply
 
Old 10/25/2010, 00:15   #16
 
elite*gold: 0
Join Date: Jul 2010
Posts: 63
Received Thanks: 20
Wiki ftw
Schaku is offline  
Old 10/26/2010, 22:02   #17
 
Sliiqht™'s Avatar
 
elite*gold: 5
Join Date: Jan 2010
Posts: 1,749
Received Thanks: 618
ja das gibts bei vill bei wiki habe es aber auf dr hp von Autoit gefunden.
Sliiqht™ is offline  
Old 02/02/2011, 17:25   #18
 
killey9's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 41
Received Thanks: 25
AutoIt]lernen leicht gemacht (by CrazyMc1234)


hier ist nochmal mal ein tutoral wie ihr autoit lernen könnt.
ich will keine keine dumme kommentare wie: was nützt das, das ist kacke etc sehen.
fangen wir mal an:
(habe die Sachen zusammen kopiert)




Geschichte
AutoIt begann seinen Siegeszug 1999. Damals begann der Engländer Jonathan Bennett für seine Arbeit eine Skriptsprache zu entwickeln, die dafür gedacht war, hunderte Computer mit der gleichen Software und Konfiguration auszustatten. Dieses Programm wurde immer besser und erreichte schon in Version 2 weite Verbreitung. Nach und nach fanden sich immer mehr fähige C++-Programmierer, die Jon bei der Entwicklung unterstützten. Anfangs war das Programm OpenSource-Software. Doch nachdem sich andere (kostenpflichtige) Automationstools offenbar daran bedient hatten, wurden die außergewöhnlichen Teile des Quelltextes wieder zurückgezogen. Deshalb ist das Programm heute nur noch Freeware. Dennoch gibt es einen Gutteil des Quelltextes hier zum Download. Für angehende C++-Entwickler durchaus zu empfehlen, da Jons Programmierstil sehr angenehm zu lesen und geschickt ist.
Auf der offiziellen Seite gibt es alle Downloads und ein Forum mit Hilfestellungen und tausenden AutoIt-Skripten zum freien Download.
Während die offizielle Seite leider im Wesentlichen auf Englisch gehalten ist, gibt es unter ein deutsches Forum, dass sich um deutschen Support bemüht und damit recht erfolgreich ist.[/COLOR]

Features

-Windows- und DOS-Dateien ausführen
-Tastendrücke simulieren (die meisten Tastaturschemata werden unterstützt)
-Mausbewegungen und -klicks simulieren
-Fenster verschieben, verändern (z.B. Größe) und anderweitig manipulieren
-Direkt mit Steuerelementen in Fenstern interagieren (Text setzen/auslesen, verschieben, (de)aktivieren, etc.)
-Mit der Zwischenablage arbeiten um das Ausschneiden und Einfügen von Texten zu ermöglichen
-Mit der Registry arbeiten
-Kompilierte Exe-Dateien erstellen, die vollkommen selbständig lauffähig sind und maximal 250 KB groß und verschlüsselt sind
-Unterstützung aller Kernfunktionen in Windows 95 - 2003 gleichermaßen (sofern vom Betriebssystem unterstützt
-AutoIt ist kostenlos - die meisten "Konkurrenz-Produkte" kosten dutzende Euro und bieten i.d.R. weniger Funktionen


Installation
Versionen
Es gibt von AutoIt immer zwei Entwicklungsstränge.
Eine stabile Version erscheint nur alle paar Monate. Diese Version ist im Wesentlichen als bug-frei anzusehen, auch wenn das natürlich nie zu 100% zu garantieren ist. Allerdings sind die Hauptfunktionen schon so lange im Einsatz, dass man sich auf deren Funktionieren verlassen kann. Bei UDFs ist das selbst in der stabilen Version nicht immer so, aber in den allermeisten Fällen sind diese auch ausreichend getestet.
Daneben gibt es im Abstand von einigen Tagen Beta-Versionen, die neue Funktionen enthalten, die aber noch nicht komplett ausgetestet sind, und gelegentlich Bugs enthalten. Meldungen über bereits gefundene Bugs gibt es im BugReport-Forum. Dort müssten Sis sich auch melden, wenn du einen Bug gefunden zu haben glaubst.
Es wird empfohlen, zum Programmieren die aktuell stabile sowie eine möglichst aktuelle Beta installiert zu haben. So kann man bei Fehlern in der Beta noch mit der stabilen Version kompilieren, aber auch alle Beta-Funktionen nutzen.


Download
Die aktuell stabile Version von AutoIt gibt es unter - dort lädst du aus der obersten Zeile die Datei hinter "Download AutoIt v3"
Die Beta-Version liegt hier: - dort ist die Version mit der höchsten Nummer und der Dateiendung .exe relvant.
Direkte Downloadlinks findest du unter rechts oben auf der Startseite.


Editor
[COLOR="DarkSlateGray"]Man kann problemlos seine Skripte mit jedem Texteditor verfassen, denn die au3-Dateien sind ganz normale Textdateien.
Allerdings haben die AutoIt-Entwickler den freien Editor SciTE speziell an AutoIt angepasst, sodass man mit Syntaxhighlighting, Funktions- und Variablenvervollständigung, Kompilieren (F7 für stabile Version, Alt+F7 für Beta) und Ausführen (F5 stabil, Alt+F5 Beta) direkt aus dem Editor heraus angenehme Features bekommt. Zudem liefert SciTE zahlreiche Tools wie Tidy (Codeeinrückung), Koda (GUI-Aufbau) und Makrorekorder mit.
Daher ist die Installation dieses Editors unbedingt angeraten.
Herunterladen kann man ihn hier: (sehe unten)


Installation
Die besten Erfahrungen haben wir mit folgender Installationsreihenfolge gemacht:

Installation der stabilen AutoIt-Version (wenn möglich am besten mit Standardpfad, aber auch ein anderes Verzeichnis sollte er verkraften)
Installation der SciTE-Version für die stabile Version
Installation der AutoIt-Beta-Version
Installation der SciTE-Updates für die AutoIt-Beta-Version
Bei den SciTE-Installationen sollte die Standardaktion für einen Doppelklick auf die Datei auf "Edit Script" eingestellt werden, damit dann SciTE geöffnet wird.

Damit sollte AutoIt fertig eingerichtet sein und ein neuen Kapitel in deiner Programmierkarriere beginnen ;-). Aber keine Angst, es wird ein schönes werden!


Erste Schritte
Die Entwicklung jedes Skriptes beginnt damit eine au3-Datei anzulegen. Das geht am einfachsten im Explorer. Dort kann man auch gleich einen Unterordner für das Skript anlegen, damit die Ordnung gewahrt bleibt und mehrere Skript sich nicht vermischen. Die Datei legen Sie dann im Kontextmenü in dem neu angelegten Ordner über "Neu" -> "AutoIt v3 Script" an. Vergeben Sie noch einen sprechenden Namen und öffnen Sie die Datei per Doppelklick in SciTE.

Vorlage ändern
Wenn Sie die Informationen, die die Standard-Vorlage für au3-Dateien ändern möchten, dann passen Sie dazu einfach die Datei "C:\Windows\ShellNew\Template.au3" (oder entsprechend bei anderem Windows-Verzeichnis) wie gewünscht an und speichern sie an ihrem ursprünglichen Ort ab.


Kommentare
Kommentare können in AutoIt auf unterschiedliche Arten gekennzeichnet werden
Alles, was in einer einzelnen Zeile nach einem Semikolon ("Strichpunkt", steht, wird als Kommentar gewertet, ergo nicht ausgeführt/interpretiert.
Ganze Blöcke können zwischen #cs und #ce bzw. #comments-start und #comments-end eingeschlossen werden, um sie als Kommentar zu markieren.

Kommentare in SciTE
In SciTE kann man mit der Minus-Taste auf dem Ziffernblock einzelne oder mehere (dann markierte) Zeilen schnell ein- und auskommentieren.

Beispiel zu Kommentaren

PHP-Code:
; Diese Zeile ist auskommentiert wegen des Kommas
Sleep(2000) ; Hier wird das Sleep ausgeführt. Dieser ToolTip("Test") aber nicht
#cs
Sleep(3000)
Sleep(4000)
#ce

Dieses Skript wird für 2 Sekunden (2000 Millisekunden) im Systray erscheinen, da nur der erste Sleep-Befehl nicht auskommentiert ist.


Funktionen aufrufen
AutoIt bringt ab "Werk" bereits einige hundert Funktionen mit. Alle diese Funktionen sind in der Hilfe detailliert beschrieben. Diese Hilfe wird ihr ständiger Begleiter ewrden, um nachzusehen, was eine Funktion tut und wie man mit ihr umzugehen hat. Um Funktionen aufzurufen, gibt man ihren Namen, gefolg von einer öffnenden runden Klammer ein. Danach übergibt man die Parameter; abgeschlossen wird der Aufruf von einer schließenden runden Klammer.
Parameter, die in der Syntaxdefinition in der Hilfe von eckigen Klammern umschlossen sind, sind optional und können weggelassen werden. Dabei gilt analog zu anderen Sprachen (Pascal, C++, ...), dass normalerweise nur von hinter her weggelassen werden darf, damit der Interpreter weiß, welcher Wert zu welchem Parameter gehört.
Man kann jedoch bei optionalen Parametern mit dem Schlüsselwort Default auf den vorgegebenen Standardwert ausweichen. So dann können auch Parameter in der Mitte der Definition, die nicht angegeben werden sollen, aufgefüllt werden. Sollte Default Probleme bereiten, kann man auch die alte Variante mit leeren Strings ("") für String-Parameter und -1 für Integer-Parameter versuchen.

Hier mal ein längeres Beispiel für Funktionsaufrufe. Details zu dem, was die Funktionen tun und der Bedeutung der Parameter entnehmen Sie bitte den entsprechenden Einträgen in der Hilfe.


Notepad-Beispiel zu Funktionsaufrufen

PHP-Code:
; Notepad starten
Run("notepad")

; Warten, bis Notepad gestartet und aktiv ist
WinWaitActive("Unbenannt - Edi")

; Einige Tastendrücke senden
Send("{TAB}Dies ist Text, den AutoIt so gesendet hat, als käme er vom Benutzer...")

; eine kleine Pause einlegen
Sleep(1500)

; Fenster schließen
WinClose("Unbenannt", "")

; nach rechts und Enter (drückt "Nein" im Speichern-Dialog)
Send("{RIGHT}{EntEr}")

; Skript beenden
Exit

Bitte betätigen Sie während das Skript läuft weder Maus noch Tastatur, da das die die Skriptfunktion beeinträchtigen könnte. Selbstverständlich kann man wichtigere Skripte dagegen absichern.


Variablen deklarieren In AutoIt gibt es so genannte Variants, das heißt, es wird von Fall zu Fall entschieden, ob ein Variablenwert als String oder Zahl interpretiert und behandelt werden soll.
Das ist einerseits angenehm, da man nicht ständig zwischen den verschiedenen Typen konvertieren muss, erfordert allerdings genaue Programmierung, damit Werte nicht falsch interpretiert werden und unerklärliche Fehler produzieren.
Man kann Variablen deklarieren, muss man aber nicht. Wenn man es macht, verwendet man dazu entweder DIM oder, wenn man möchte, dass die Variable überall gilt, GLOBAL. Man kann Zeichenketten oder Zahlen gleich Startwert zuweisen.
Bei Arrays gibt man die Größe in eckigen Klammern an.


Beispiel zu Variablendeklarationen

PHP-Code:
Dim $variable ; Variant
Dim $array[100]
Dim $var = "Wert"

Global $__var_1, $var__2

$ergebnis = 1 + 7*7

Dim $meine_variable

Beim Ausführen dieses Skriptes werden Sie nichts bemerken - es werden ja keine Ausgabe getätigt. Erreicht das Skript die letzte Zeile, wird es einfach beendet.


Variablen manipulieren
In AutoIt hängt man zwei Zeichenketten ("Strings") aneinander, indem man dazwischen das Zeichen & schreibt.
Für die Rechnung mit Zahlen verwendest du die Zeichen +, -, /, *. Dazu sind einige mathematische Funktionen verfügbar (siehe Hilfe, Abschnitt Funktionsreferenz -> Mathematische Funktionen).
Wichtig ist, dass man auf der linken Seite des = eine Variable angibt, die das Ergebnis der Berechnungen oder Aktionen auf rechten Seite aufnimmt.
Diese Variable darf auch rechts auftauchen, dann wird ihr Ursprungswert allerdings mit dem Ergebnis überschrieben.

Beispiel

PHP-Code:
Dim $test_var_string = 'Dies ist eine lustige "Egal"-Zeichenkette'
Dim $test_var_int = 4925

MsgBox(524320, "Testprogramm", "Der Wert der Variablen $test_var_string:" & @CRLF & $test_var_string)
; @CRLF ist eine Variable, die für einen Zeilenumbruch steht.
MsgBox(0, "Testprogramm", "Der Wert der Variablen $test_var_int:" & @CRLF & $test_var_int)

; ein bisschen Manipulation
$test_var_string = $test_var_string & ", die ein wenig gewachsen ist ;-)"
$test_var_int = $test_var_int + 5 * (8 + 7)

MsgBox(0, "Testprogramm", "Der neue Wert der Variablen $test_var_string:" & @CRLF & $test_var_string)
MsgBox(0, "Testprogramm", "Der neue Wert der Variablen $test_var_int:" & @CRLF & $test_var_int)


If-Abfragen
Eine der wichtigsten Möglichkeiten einer Programmiersprache ist es, den Programmablauf in Abhängigkeit vom Wert von Variablen steuern zu könen. Dazu verwendet man in AutoIt wie in allen modernen Sprachen "If"-Anweisungen.

Syntax von If-Abfragen

PHP-Code:
If <expression> Then
statements
...
[ElseIf expression n Then
[elseif statements ... ]]
...
[Else
[else statements]
...
EndIf

Man gibt also einen auswertbaren Ausdruck nach If und vor Then (die in einer Zeile stehen müssen!) an. In der Regel enthält dieser Ausdruck ein Gleichheitszeichen (=), um zwei Werte (typischerweise eine Variable und den erwarteten oder zu testenden Wert) zu verlgichen. Ist dieser Ausdruck wahr (true) - also die beiden Seiten gleich, dann werden die Befehle ausgeführt, die bis Else, ElseIf oder EndIf folgen. Ansonsten nicht. Man kann statt = auch die mathematischen Vergleichsoperatoren <, <=, >, >= und <> (ungleich) verwenden.
Ein Else-Zweig wird genau dann ausgeführt, wenn der vorhergehende If-Zweig nicht ausgeführt wurdewar.
Mit EndIf verlässt man die If-Definition und mehrt wieder in den normalen Quelltext zurück, der immer ausgeführt wird.

Hängt nur ein Befehl von der If-Abfrage ab, so kann man die If-Abfrage verkürzt aufschreiben:

PHP-Code:
If <expression> Then statement

Beispiel

PHP-Code:
$zahl = InputBox("Bitte Zahl eingeben!", "Deine Zahl bitte:", "4")

; Kurzform:
If $zahl = 7 Then MsgBox(0, $zahl, "Du hast 7 eingegeben!")

If $zahl > 5 Then
MsgBox(0, $zahl, "Du hast eine Zahl eingegeben, die größer als 5 ist!")
ElseIf $zahl = 5 Then
MsgBox(0, $zahl, "Du hast 5 eingegeben!")
Else
MsgBox(0, $zahl, "Ich kann keine Aussage über die eingegebene zahl machen. Sorry")
EndIf


Rückgabewerte von Funktionen
Fast alle Funktionen geben Werte zurück.
Das kann z.B. das Ergebnis einer Aktion mit den Parametern (Mathematikfunktionen oder Stringfunktionen). In diesem Fall wird das Flag @error (das sich wie eine Variable auslesen lässt) mit Informationen gefüllt, ob die Ausfürhung geklappt hat oder nicht.
Funktionen, die nichts zurückgeben müssen, melden Schwierigkeiten in der Regel über den normalen Rückgabewert.
Für alle eingebauten Funktionen ist in der Hilfe aufgelistet, wo und mit welchen Werten sie was signalisieren.
Den Rückgabewert fängt man quasi auf, indem man eine Variable und ein Gleicheitszeichen vor den Funktionsaufruf stellt. Der Interpreter führt zunächst die Funktion aus und ersetzt ihren Aufruf durch den Rückgabewert. Dann findet dessen Zueweisung zur Variablen statt.
Das Flag @error müssen Sie direkt nach dem Ausführen der Funktion abrufen, wenn Sie das möchten, denn die nächste Version kann wieder in dieses Flag schreiben, um ihrerseits bestimmt Ergebnisse anzuzeigen.

Beispiel Rückgabewerte

PHP-Code:
Dim $notepad

; Notepad starten und "die PID des Prozesses, der gestartet wurde", in $notepad speichern
$notepad = Run("notepad", "", @SW_MAXIMIZE)

; Warten, bis Notepad aktiv ist und nur, wenn es innerhalb von 5 Sek. aktiv wird, Text schreiben
If WinWaitActive("Unbenannt - Editor", "", 5) Then
; Einige Tastendrücke senden
Send("Dies ist Text, den AutoIt so gesendet hat, als käme er vom Benutzer...")

Sleep(1000)
EndIf

; Den Prozess, den Run vorhin gestartet hat, schließen (erspart auch die Speichern-Abfrage)
ProcessClose($notepad)

Wenn im Ausdruck bei If kein Vergleich durchgeführt, so wird quasi gegen ... <> 0 verglichen, denn alle Werte außer 0 ergeben True und erfüllen damit die Abfrage.

Schleifen
AutoIt unterstützt eine Vielzahl von Schleifentypen, um es Ihnen zu ersparen, Code vielfach untereinander zu hängen und es erst zu ermöglichen, die Anzahl der Durchläufe von Gegebenheiten abhängig zu machen, die erst zur Laufzeit klar werden.
Eine Schleife ist der Weg, einen Skriptteil mehrfach auszuführen. Wahrscheinlich willst du einen Befehlsblock entweder x-mal wiederholen oder solange, bis eine bestimmte Bedingung wahr oder falsch ist.
In AutoIt geibt es folgende Schleifen-Typen:

For...Next
While...WEnd
Do...Until
Obwohl alle ähnliche Dinge ausführen, sind sie doch leicht verschieden und es wird je nach Situation zu entscheiden sein, welcher Typ zu benutzen ist. Hier sei beispielshalber die For-Schleife kurz angesprochen.

For-Beispiel

PHP-Code:
For $i = 5 to 1 Step -1
MsgBox(0, "Countdown!", $i)
Next
MsgBox(0,"", "Fertig!")

For $j = 1 to 5
MsgBox(0, "Countup!", $i)
Next
MsgBox(0,"", "Fertig!")

Man gibt also eine Zählvariable an, sowie Start- und Endwert. Zusätzlich kann man nach dem Schlüsselwort step noch die Schrittweite, also den Wert, der bei jedem Durchlauf zur Zählvariablen dazugezählt wird, angeben.
Alle Befehle bis zum Schlüsselwort Next werden dann wiederholt ausgeführt.
Danach wird das Skript unterhalb der Schleife fortgesetzt.


Kurz nur zur While-Schleife
Mit der While-Schleife werden in der Regel Endlosschleifen realisiert. Vor allem bei GUI-Skripten muss es immer eine solche Endlosschleife geben, damit das Skript nicht unerwartet sein Ende erreicht. Diese Schleife sieht dann so aus:


While-Endlosschleife

PHP-Code:
While 1
Sleep(10)
WEnd

so das wars ich hoffe ihr könnt damit was anfangen

Finde s gutxD ein thx^^
killey9 is offline  
Thanks
1 User
Reply

Tags
autoit, coden, hilfe, metin2, spiele


Similar Threads Similar Threads
Str+Dex+Int auf max leicht gemacht
04/13/2012 - General Gaming Discussion - 4 Replies
:hm: Kann von Shard zu Shard gefixt sein Kennt zwar fest jeder aber dies nicht kennen Macro STR Last Object Last Target War/Peace diese 3 sachen auf eine taste legen dan ne axt in hand nehmen an den naechsten baum auf nen umgefallenen baum setzen doppelklick auf axt und dan auf den baumstamm dan einmal mit tapulator abbrechen und den knopf der fuer das da oben geschriebene makro verwendet werden soll entweder einklemmen oder wer uo loop hat einfach das benutzen mit delay 100
c++ lernen - einfach gemacht
04/30/2011 - Coding Tutorials - 10 Replies
Hallo da ich in letzter Zeit nicht viel zu tun hatte dachte ich mir fangen wir halt ein bisschen an mit "lernen". Ich wollte also C++ üben suchte ein wenig bei google und fand diese Seite Einführung in C++ - Gratis C++ Programmieren Lernen, 106 Beispielprogramme Inklusive Also ich kann sie euch für den Anfang des lernens nur enmpfehlen sie hat mir ganz viel geholfen. Würde mich über ein thx freuen auch wenn ich euch nicht richtig geholfen habe^^
[AutoIt Au3Record]Pixelbots leicht gemacht
07/28/2010 - Coding Tutorials - 8 Replies
Wilkommen! Ich möchte euch heute ein AutoIt v3 Tool vorstellen, dass vielleicht noch nicht jeder kennt. Es erleichtert PixelBots zu machen usw. Aus mit Koordinaten im AutoIt Window Info! Das ,,Tool" das ich euch näher bringen will heißt Au3Record.exe http://mallow.wakcdn.com/screenshots/32134/big.PN G
[TUT]Pixelbots u.a leicht gemacht[AutoIt Au3Record]
07/27/2010 - Tutorials - 1 Replies
edit: Bitt löschen Verschoben Thx omer36
[Tutorial] Batch lernen, leicht gemacht
11/12/2009 - Tutorials - 6 Replies
Hi @, hab hier ein nettes Tutorial gefunden, welches euch eventuell helfen könnte ;) Mit diesem Tutorial kannst du lernen wie man richtig batcht. Erst einmal ein paar Fakten: Vorteile - Viele Befehle von Windows selbst - Viele Möglichkeiten mit Variablen und anderem zu programmieren



All times are GMT +1. The time now is 06:58.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.