Hi Scripter,
habe vor ein paar Tagen mit AutoIt angefangen. Bin also noch recht neu deshalb nicht böse sein wenn mein Script so chaotisch aussieht
Habe Folgendes Problem:
Ich möchte das meine Maus an verschiedenen Stellen auf meinem Screen nen Left-Klick macht. Die Koordinaten des Klicks sollen dann in einem Array gespeichert werden. Der Inhalt des Arrays, soll dann in eine .INI-Datei geschrieben werden. Zum späteren Zeitpunkt sollen die Koordinaten aus der .INI-Datei gelesen werden, um erneut einen Klick auszuführen.
Hier mal das Scirpt der 1. Prozedur:
$feld = PixelSearch( 400, 365, 1300, 840, 0x7A572D)
While IsArray($feld) < 1
$feld = PixelSearch( 400, 365, 1300, 840, 0x7A572D)
If IsArray($feld) Then ExitLoop
$feld = 0
WEnd
IniWrite("Ackerland.ini", "Felder", $feld[0], $feld[1])
MouseClick( "left", $feld[0], $feld[1],1,10)
Sleep(5000)
While @error <> 1
If _IsPressed("1b") Then ExitLoop
$ex1 = $feld
$feld = PixelSearch( 400, 365, 1300, 840, 0x7A572D)
$ex2 = $feld
If $ex1 = $ex2 Then ExitLoop
IniWrite("Coord.ini", "Felder", $feld[0], $feld[1])
MouseMove($feld[0], $feld[1],5)
Send("{CTRLDOWN}")
MouseClick("left")
Send("{CTRLUP}")
Sleep(50)
WEnd
Exit
Soa und hier die 2. Prozedur:
$coord = IniReadSection ( "Coord.ini", "Felder")
FileChangeDir(@ScriptDir)
$while = UBound($coord)
For $i = 1 To $coord[0][0]
If _IsPressed("1b") Then ExitLoop
MouseClick("left", $coord[$i][0], $coord[$i][1],1,10)
Sleep(50)
$clr = PixelSearch( 400, 350, 1300, 840, 0x7CECED, 2)
Sleep(20)
If IsArray($clr) Then MouseClick("left", $clr[0], $clr[1],1,10)
If IsArray($clr) Then $i = $i + 1
Next
Irgendwie klappts nicht so ganz. Das Programm schreibt bei der 1. Prozedur nicht alle Koordinaten in die .INI-Datei und bei der 2. Prozedur klickt die Maus auf Koordinaten die gar nicht so aufgelistet wurden O.o....
Danke schonmal für euer Interesse