wir haben in der Arbeit ein neues Makrotool für einfache Scripte.
Nur ist das Problem, jeder kann ein eigenes Script schreiben aber das Script kann nicht einfach an einen Kollegen geschickt werden sondern muss über den Editor "geladen" werden.
Deswegen habe ich mir überlegt in AutoIT einen kleinen "Bot" zu schreiben.
Wie schaut der Ablauf aus:
- Programm starten
- Button neu klicken
- Bezeichnung und Makro eintragen
- speichern
- laden
Die Bezeichnung und das Makro eintragen läuft super mit Controlsend. Die Buttons habe ich momentan mit Pixelsearch gelöst.
Meine Fragen sind wie folgt:
1. Gibt es eine Möglichkeit einen "Programmiercode" zu kopieren (d.H. im Makro können z.B. IF-Abfragen sein, Klammern, Schleifen. AutoIt erkennt es selber als Syntax für das Programm an.
2. Kann ich auch die Buttons ohne Pixelsearch betätigen? Mit dem Window Infotool kann ich die Buttons nicht einzeln auswählen sondern diese werden als Class TPanel Instance: 5 angezeigt
der bisherige Code schaut recht simple noch wie folgt aus:
PHP Code:
Func start()
BlockInput(1)
Local $iPID = Run(@AppDataDir & "\Makro-Programm\Makro.exe", "", @SW_SHOWMAXIMIZED)
$hWnd = WinWait("Makroeditor", "", 10)
sleep(1000)
$coord = PixelSearch( 497, 109,623, 133, 0xE8B056)
MouseClick("left", $coord[0], $coord[1])
Sleep(500)
ControlSend($hWnd, "", "TEdit1", "Makrobezeichnung" )
ControlSend($hWnd, "", "TMemo2", "Makro" )
Sleep(1000)
$coord = PixelSearch( 497, 109,623, 133, 0x8D51AB)
MouseClick("left", $coord[0], $coord[1])
Sleep(1000)
$coord = PixelSearch( 497, 109,623, 133, 0x66CC33)
MouseClick("left", $coord[0], $coord[1])
Sleep(1000)
BlockInput(0)
EndFunc






