Rieccoci. Benritrovati alla seconda parte della nostra guida introduttiva ad AcTool.
Essendo un linguaggio MACRO, la parte più importante è quella riguardante i comandi. Andiamoli ad esplorare più in profondità per creare qualcosa di più complesso.
Abbiamo già conosciuto keys, loop, end e restart.
MousePos. Abbreviazione di Mouse Position, serve per puntare il pixel selezionato dalle coordinate (x, y) - (ascisse, ordinate), basato su un sistema di assi cartesiani. Per trovare il pixel che volete, bisogna fare così: se siete su un'applicazione diversa da AcTool, mettete il puntatore dove preferite, premete ALT + TAB per cambiare applicazione (ovviamente il puntatore deve rimanere fermo), andate su AcTool, premete CTRL + M ed avrete le coordinate dei vostri pixel.
Esempio:
MousePos x, y //a posto della x e della y le coordinate numeriche
SetActiveWindow. Serve per aprire una determinata finestra di un processo.
Esempio:
SetActiveWindow Firefox //per aprire la finestra di firefox
Leftclick e Rightclick. Corrispondono rispettivamente alla pressione dei tasti sinistro e destro del mouse. Di solito vengono assegnati ad un mousepos.
Esempio:
mousepos x, y
Rightclick //si preme il tasto destro, sostituibile con il tasto sinistro o leftclick
Delay. Corrisponde al tasto di pausa. I numeri dopo sono messi in millisecondi, ma se specificate il suffisso sec allora diverranno secondi.
Esempio:
Delay 1 sec //pausa di 1 secondo
Keydown. Corrisponde ad un tasto lasciato premuto nella tastiera.
Esempio:
Keydown 5 //lascia premuto 5
Iscolor. Corrisponde all'espressione "se è colore x, y" (stesso discorso per il mousepos delle coordinate). Esistono i comandi isblack (nero), isgreen (verde), iswhite (bianco), isblue (blu), isred (rosso), isgrey (grigio), oltre a diverse varianti che per adesso non ci interessano (isobject, iswindow).
While 1 = 1. Corrisponde all'inizio di un processo che rimane infinito nel tempo.
Esempio:
while 1 = 1 //ciclo infinito
Adesso vi starete chiedendo: "E se dovessi mettere in atto una MACRO che spinga ripetutamente la barra spazzatrice?" Nessun problema. Non tutti i tasti possono essere scritti nella finestra per come appaiono nella denominazione comune. Per questo vi inserisco i tasti che userete di più.
Comandi tastiera. {TAB} (TASTO TAB) - {RETURN} (TASTO INVIO) - {SPACE} (BARRA SPAZZATRICE).
Gli altri potete trovarli nel menù a destra ("Commands and Macros") dell'interfaccia grafica.
Visto che abbiamo arricchito la nostra conoscenza su AcTool, vi mostro come creare un piccolo BOT un po' più complesso.
setactivewindow Google - Mozilla Firefox //apre google da firefox
keys worldcomputing //scrive il nome del sito su google
delay 2 sec //pausa di 2 secondi
keys {RETURN} //preme INVIO per avviare la ricerca
delay 3 sec //pausa di 3 secondi
MousePos 25, 1008 //posiziona il puntatore sull'icona di windows in basso a destra
leftclick //pressione del tasto sinistro del mouse
MousePos 319, 947 //posiziona il puntatore su "arresta il sistema"
leftclick //pressione del tasto sinistro del mouse
E' un BOT stupido, ma apre la finestra di firefox, scrive il nome del foro, preme invio, poi dalla pausa di 3 secondi in poi imita i comandi umani per arrestare un PC.
Dunque il codice scritto sopra è equivalente a
setactivewindow Google - Mozilla Firefox //apre google da firefox
loop 1
keys worldcomputing //scrive il nome del sito su google
delay 2 sec //pausa di 2 secondi
keys {RETURN} //preme INVIO per avviare la ricerca
delay 3 sec //pausa di 3 secondi
MousePos 25, 1008 //posiziona il puntatore sull'icona di windows in basso a destra
leftclick //pressione del tasto sinistro del mouse
MousePos 319, 947 //posiziona il puntatore su "arresta il sistema"
leftclick //pressione del tasto sinistro del mouse
end
Finisce qui la seconda parte della nostra guida. Alla prossima!
Si ringrazia Christian Messina del contributo.