I cookie permettono il funzionamento di alcuni servizi di questo sito. Utilizzando questi servizi, accetti l'utilizzo dei cookie da parte nostra. [ Leggi dettagli ]

Link sponsorizzati

Valutazione attuale: 5 / 5

Stella attivaStella attivaStella attivaStella attivaStella attiva
 

Eccoci, benritrovati alla terza e ultima parte della nostra guida su AcTool, un programmino in grado di creare MACRO e/o BOT soltanto con l'ausilio di pochi comandi e qualche stringa.

La volta scorsa ci eravamo fermati all'elenco dei comandi più importanti e più usati. Oggi studieremo qualcosa di più complicato, in modo da rendere AcTool un programma con il quale è possibile programmare (ovviamente intendo relativamente visto che non esistono compilatori o eseguibili): costanti, variabili, ciclo If e altri comandi.

Costanti. E' un identificatore il cui valore può cambiare mentre una macro è in esecuzione. Le costanti vengono quasi sempre definite contenitori di dati. Una costante può essere una stringa, come il vostro nome o un numero. E' sempre introdotto dalla parola constants e chiuso da un end.

Esempio:

Constants
A = Alfabeto

B = Numeri
end


Queste sono le nostra dichiarazioni di costanti. Quando vogliamo far eseguire un'azione al cui interno vi è una costante, bisogna precedere quest'ultima da carattere $.

Esempio:

$A
$B

Di solito le costanti vengono usate nei cicli IF o per non ripetere troppo un'azione con gli stessi parametri.


CopyFile.
E' un comando molto particolare che viene usato per copiare file da una destinazione ad un'altra. Prima viene sempre il file da copiare e poi la destinazione.

Esempio:

CopyFile C:\test.1, C:\CartellaTest

NDR
Mi raccomando alla virgola , tra il file e la destinazione!


DeleteFile. Comando usato per cancellare un file.

Esempio: 

DeleteFile C:\(nome file).(estensione file)


DirCreate. Creare una cartella nella directory specificata.

Esempio:

DirCreate C:\Robin


DirDelete. Cancellare una cartella dalla directory specificata. Usare questo comando molto cautamente per non combinare pasticci.

Esempio:

DirDelete C:\Robin


DragTo. E' una sorta di mousepos e leftclick assieme, cioè selezionare e trasportare un file da un posto all'altro. Dopo questo comando bisogna mettere le coordinate dei pixel.

Esempio:

DragTo x, y

NDR
Ricordatevi il metodo del MousePos per individuare le coordinate: posizionate il puntatore, ALT + TAB per cambiare finestra e andare su AcTool, CTRL + M per avere le coordinate sulla finestra di dialogo.


LeftMouseDown. Lascia premuto il tasto sinistro del mouse.
LeftMouseUp. Contrario del comando precedente. Esempi: 

LeftMouseDown
LeftMouseUp


RightMouseDown. Lascia premuto il tasto destro del mouse.
RightMouseup. Contrario del comando precedente. Esempi:

RightMouseDown
RightMouseup


SaveScreen. Salva lo screen nella directory specificata (lo screen viene eseguito automaticamente).

Esempio:

SaveScreen C:\MioScreen.bmp


Adesso dedichiamoci al Ciclo If. Cominciamo col dire che il ciclo If equivale all'espressione nella lingua parlata come: "Se (azione) poi (azione) altrimenti (azione) fine". Per cui è una cosa che accade se l'altra non può accadere. 

Ciclo If. E' un costrutto di sistemi booleani in cui vi è una o più espressioni. Se si menziona l'If allora dopo si vedrà se l'azione sarà vera o falsa. Se la condizione è vera, si esegue il codice dopo il caso. Altrimenti esso esegue il codice che segue l'Else. Quest'ultimo comando è facoltativo.

If $var1 = 5 and $var2 = 6 and $var3 = 7 and $var4 = 8 and $var5 = 9 //Azione
End

Notare la particella and tra tutte le dichiarazioni; ciò significa che se tutte le dichiarazioni sono vere, allora l'If ritorna vero.

If $var1 = 5 or $var2 = 6 or $var3 = 7 or $var4 = 8 or $var5 = 9 //Azione
End

Notare la particella or tra tutte le dichiarazioni; ciò significa che se almeno una delle dichiarazioni è vera, allora l'If ritorna vero. 

NDR
Non si possono mescolare l'or con l'and, quindi sceglierne una adatta al tipo di azione.


Possono essere usati più di un If, mantenendoli anche su una stessa riga.
Si può anche usare una o più sottostringhe per testare i comandi nel testo, mettendo dentro dei comandi "valutatori". Questo vi permette di testare se esiste un testo in una variabile o in una costante.

Inoltre possiamo creare una form ed aggiungervi dentro tutti i comandi del ciclo.

Esempio: 

Form FormName, FormCaption
FieldName=EditBox:FieldLabel:DefaultValue
FieldName=CheckBox:FieldLabel:True/False
FieldName=Combobox:FieldLabel:Comma Seperated List
end

Ma questi sono comandi che in AcTool non vengono usati quasi mai. Per quest'ultimo codice vi servono: Decal e ACTool Companion.


Say.
E' un comando che molto spesso è usato nei cicli If. Corrisponde a dire, affermare.

Esempio:

If $Value = 100
Say $Value
End


Infine, vi mostrerò come individuare un errore per poter correggerlo.

Supponiamo di scrivere una stringa senza alcun significato. Ho scritto il numero 87, un numero e un comando senza alcun senso. Se premiamo il tast Start nella finestra di dialogo di AcTool, spunterà questa finestra :

Errore


Nella finestrella Error abbiamo le informazioni necessarie per correggere ciò che abbiamo scritto di sbagliato. In questo caso nella prima riga della finestrella vedremo che lo sbaglio sta in ciò che abbiamo scritto nella finestra di dialogo principale, e cioè "87". Nella seconda riga, il programma ci indica a che linea (Line) si trova l'errore (1): dunque la stringa nella prima linea è errata.

Siete pronti a creare una vostra MACRO complessa e a creare così un BOT per i vostri usi quotidiani e regolari :)
A breve uscirà la guidain formato .pdf, completa delle 3 parti.

Spero di essere stato chiaro.


Si ringrazia Christian Messina del contributo.

Ho scritto e condiviso questo articolo su WORCOM, fallo anche tu. Invia ora un nuovo articolo!
Autore: Antonio Liggieri
Esperto di computer e in sicurezza informatica, webmaster, webdesigner, webdeveloper e webmarketer. Sono il fondatore di WORCOM. Amo l'informatica, le arti marziali e il bodybuilding.


Ho anche scritto:

Link sponsorizzati