My Home
   
  Meine Homepage
  lil Hack forum
 
=> Noch nicht angemeldet?

Das Forum dient hauptsachlich der Bewertung meiner Seite... Pro und Kontra zu all meinen und auch anderen sachen usw...

lil Hack forum - [TUT]AutoIT Alle die was drüber wissen schrebens rein pls

Du befindest dich hier:
lil Hack forum => Programmiersprachen => [TUT]AutoIT Alle die was drüber wissen schrebens rein pls

<-Zurück

 1 

Weiter->


...KiD...
(11 Posts bisher)
04.02.2010 03:04 (UTC)[zitieren]
Hi ich will mal meinen das es sinnvoll ist einen massentrehad zu eröffnen.
Alle dies nicht haben brauchen Autoit einfach googlen und dan auf der seite auf downloads und dan am besten ein bissl weiter unten die .zip downloaden da ist alles drinne.
Also ich will ma anfangen...
Ich werde mal nen leichten code auflösen


Zitat:

Run ("notepad.exe"
WinWaitActive ("Unbenannt"
Send ("Jetzt wird Text getippt..."
Send ("{enter}"
Send ("Das könnten wir auch selbst machen..."
Send ("{enter}"
Send ("Aber wozu haben wir AutoIt?"
Sleep (5000)
Send ("!{F4}"
Sleep (1000)
Send ("{right}"
Sleep (1000)
Send ("{enter}"
Exit

Also ich fang oben an:

ACHTUNG!!! es ist wichtig das alle "angaben" in
" "und ( ) stehen sonst sind es nur sinnlose platzhalter die nix bewirken

Run(" "... Bedeutet soviel wie öfffne...
also im normalfall muss man einen pfad angeben ,aber da notepad.exe ein standard prog ist, braucht man das hier ausnahmsweise nicht !

WinWaitActivate bedeutet das Autoit wartet bis das fenster "Unbenannt" bereit ist.
Den befehl gibt es, weil Autoit sehr schnell arbeitet
und oft beginnt Befehle auszufüren, obwohl das fenster zb. noch läd!

Send bedeutet das Autoit einen text , oder auch eine taste an das aktive fenster sendet indiesem fall erst "Jetzt wird Text getippt..." und dann die ENTER Taste.
Achtung!!! es gibt für mache tasten spezielle Zeichen in Autoit
zb.
Zitat:

! = alt-knopf

^ = strg-knopf

{Enter} = Enter-knopf

{Delete} = lösch-knopf

{left}{right}{up}{down} = "links/rechts/hoch/runter" -knopf (pfeiltasten)

{F1}/..../{F12} = "F1 - F12"-knopf


Sleep heißt Autoit soll warten...
Hier werden sekunden so:
1000 = 1 sekunde
2500 = 2,5 sekunden...usw.
angegeben!!!!


Exit bedeutet das, der laufene autoit script geschlossen wird.

so viel dazu es ist wenig aber ein anfang.
Werde wenn jemand ne mail an lion_the_kid@hotmail.de schickt spätestens weiterschreiben...
hab grad viel um die ohren sry.
...KiD...
(11 Posts bisher)
04.02.2010 03:14 (UTC)[zitieren]

der teil ist nicht von mir!!!

Was sind "Variablen" ?

Eine Variable ist nichts anderes als ein "Platzhalter".
Es gibt Scripte da wird ein bestimmter wert über 1000 mal verwendet.
Wieso soll man sich die finger wund tippen beim schreiben des source-codes, wenn man es genauso gut abkürzen kann?

Eine Variable wird in AutoIt durch das $(dollar)-symbol kenntlich gemacht.
So weiß AutoIt das es sich um eine Variable handelt und nicht etwa um einen Befehl, etc.
__________________________________________________ ____________

Gibt es für Variablen ein Grundgerüst?

Das Grundgerüst ist ganz sympel :

$variable = Wert/"Wert"

Ganz wichtig ist hierbei folgendes :
AutoIt unterschiedet zwischen groß und kleinschreibung bei Variablen !

So sind (z.B.) :

$Variable = 10
$VaRiabLe = 10
$vAriabLe = 10

nicht das gleiche !

Ihr solltet euch angewöhnen bei variablen immer klein zu schreiben.
So kommt es nicht zu problemen.
__________________________________________________ ____________

Darf ich alles als Variable schreiben?

So ziemlich alles ist erlaubt. (solange $ davor steht)
Aber so ganz ohne ausnahmen geht es auch hier nicht.

So sind zeichen wie !"§$%&/()=? etc. unzulässig.
Ebenso wie äöü sowie ÄÖÜ

__________________________________________________ ____________

Ihr könnt natürlich auch Text und/oder andere Variablen miteinander verbinden.

So müsst ihr nicht ständig einen neuen Send() befehl setzten.
Um eine Variable mit einem String, das ist text zwischen den "xxx"-zeichen, zu verbinden benötigt ihr das zeichen

&

Ein richtig verbundener Text würde so aussehen :


Zitat:
$variable = "nummer 1"

Send ("Text " & $variable)

Ergebnis => Text nummer 1
(richtig)


Wie ihr seht hab ich nur den Text in Strings ("xxx" geschrieben.
Das liegt daran das AutoIt alles was in Strings steht als "String" wertet, und nicht etwa mehr als Variable.

So ist z.B. das hier keine Text indem eine Variable benutzt wird :


Zitat:
$variable = "nummer 1"

Send ("Text & $variable"

Ergebnis => Text & $variable
(falsch)

Ihr seht was passiert wäre?
AutoIt hätte den text einfach so abgetippt wie er im String steht.
Und nicht etwa so wie wir ihn gebraucht hätten.

__________________________________________________ ____________

Aber jetzt mal ein kleines Beispiel davon wie man Variablen anwenden könnte.

Beispiel (ohne Variablen) :

Stellt euch vor ihr wollt eine Massenmail schreiben.


Zitat:
Send ("Hallo Kevin,"
Send ("{Enter}"
Send ("Ich veranstalte am xx.xx.xx um xxx einen Ausflug."
Send ("{Enter}"
Send ("Ich würde mich freuen wenn du kommen würdest."
Send ("{Enter}"
Send ("Achja Kevin, es könnte sehr spät werden. Sag deinen Eltern bitte bescheid."
Send ("gez.: MaZze"

So ihr wollt aber die selber nachicht an 3 weitere freunde schicken.
Alles wieder neu abtippen?
Wieso nicht einfach per Variable?

Beispiel (mit Variablen) :


Zitat:
$freund1 = "Kevin"
$freund2 = "Andreas"
$freund3 = "Julia"
$freund4 = "Anne"

Send ("Hallo " & $freund1 )
Send ("{Enter}"
Send ("Ich veranstalte am xx.xx.xx um xxx einen Ausflug."
Send ("{Enter}"
Send ("Ich würde mich freuen wenn du kommen würdest."
Send ("{Enter}"
Send ("Achja " & $freund1 & ", es könnte sehr spät werden. Sag deinen Eltern bitte bescheid."
Send ("gez.: MaZze"


In diesem Fall müssen wir "nur" den namen der Variable austauschen und schon ist unsere "Massenmail" fertig.


Jetzt wisst ihr was Variablen sind.
Das solltet ihr unbedingt lernen!
Den ohne Variablen kommt man bei AutoIt einfach nicht aus.
__________________________________________________ ____________

Wie bewege ich die Maus?
Und wie bestimme ich wo geklickt bzw. gedrückt gehalten wird?


Fangen wir doch mit einer simplen bewegung an

Das Grundgerüst dafür ist :

MouseMove (x, y)


Was soll x und y bedeuten?

Das sind einfache Bildschirm-Koordinaten.
Je nachdem was ihr für eine Bildschirmauflösung habt ist der punkt, der geklickt wird immer ein anderer.
__________________________________________________ ____________

Aber wie krieg ich raus wo dieser punkt (x, y) ist ?

Dazu hat AutoIt ein ganz tolles Tool. (in der Standard-Installation enthalten)
Dieses Tool nennt sich "AutoIt Window Info" (Alle Programme / AutoIt v3 / AutoIt Window Info)

Öffnen wir es dochmal und schauen es uns inruhe an.




Wie ihr seht sind dort sehr viele informationen aufgelistet.
Doch für uns interessant sind eigentlich nur :

>>>>Window>Mouse (Strg+Alt+D)

Bei ganz "besonderen" wünschen könnt ihr auch einen mix verwenden... (z.B. "^!{F1}" --> (Strg+Alt+F1)

Nun kommen wir zu der stelle mit der Funktion.
Wie ihr eure Funktion nennt, ist euch überlassen.
Ganz wichtig aber ist : "Nur normale buchstaben und zahlen dürfen verwendet werden!" (keine sonderzeichen #+*-+äüö, etc...)

Anschließend tragt ihr eure befehle in die Funktion ein.

Eine sache dürft ihr aber nie vergessen :

Am ende jedes scripts, der "HotKeySet"-befehle enthält, muss eine Endloschleife gesetzt werden.

Am besten hierfür eignet sich der Befehl "SLeep (100)", da er "nichts" an eurem script macht, den benutzter nicht stört und dafür sorgt das unser Programm/Script nicht einfach beendet wird.

Natürlich könnt ihr auch befehle in diese Schleife einsetzten... aber das wichtigste ist, das sie Endlos weiterläuft !

Beispiel :

HotKeySet ("^{F1}", "start"

Func start()
Run ("Notepad.exe"
WinWaitActive ("Unbenannt"
Send ("HotKeySet"
EndFunc

while 1
sleep (100)
WEnd



Ich hoffe dieses Tutorial hat euch gefallen.
Viel Spaß beim lernen






falls ihr noch ihrgendwelche fragen habt dann postet sie hier ich helfe wenn ich kann!
Bati23.de.tl (Gast)
17.02.2010 07:19 (UTC)[zitieren]
Nr 1

Antworten:

Dein Nickname:

 Schriftfarbe:

 Schriftgröße:
Tags schließen



Themen gesamt: 3
Posts gesamt: 17
Benutzer gesamt: 1
Derzeit Online (Registrierte Benutzer): Niemand crying smiley
 
 
  Omg es waren schon 1878 Besucher (3940 Hits) hier! Meine page Nix besonderes ...  
 
Jehaa Diese Webseite wurde kostenlos mit Homepage-Baukasten.de erstellt. Willst du auch eine eigene Webseite?
Gratis anmelden