Qualche mese fa ho conosciuto Autoit, un linguaggio di scripting e automazione per Windows. Contrariamente a quanto si possa credere, è davvero semplice e consente di automatizzare qualsiasi cosa all'interno di un SO Windows.
In questa guida mostrerò alcuni script elementari ma che potrebbero risultare molto utili ma soprattuto vi introducono alla comprensione degli elementi che sono la base del suo funzionamento. Iniziamo subito!
Innanzitutto va detto che Autoit si compone principalmente di un editor necessario alla scrittura e alla compilazione del codice.
Tutto il software di cui abbiamo bisogno potremo trovarlo in questa pagina ed è freeware.
Possiamo benissimo scaricare "AutoIt Full Installation" che include tutto il necessario, dall'editor per la compilazione, al software che ci permetterà in seguito di convertire lo script autoit (.au3) in file exe.
Scaricato il pacchetto completo, possiamo procedere con l'installazione. Portarla a termine è davvero semplice e l'operazione prevede pochi passaggi.
Andando avanti ci troveremo di fronte alla schermata seguente:
Qui sceglieremo quale sarà il comportamento di default di AutoIt quando si eseguirà l'apertura diretta di un file con estensione .au3: selezionando Run the script, quando faremo un doppio clic sul file questo verrà eseguito. Se optiamo invece per Edit the script, al doppio clic sullo stesso tipo di file seguirà l'apertura dell'editor per la modifica del codice. A voi la scelta!
Per rendere meglio l'idea delle potenzialità di questo linguaggio, vi mostrerò la creazione di uno script che automatizza l'installazione di un software. In questo caso creeremo l'installazione di CCleaner.
Quello che sta alla base nel cercare automazioni di determinate azioni e di usare linguaggi come Autoit è che questi ci consentono di confezionare degli eseguibili adatti ad effettuare operazioni ripetitive. Ecco quindi che in nostro aiuto troviamo linguaggi come Autoit che condensano moltissime attività separate in un solo clic!
Quello che è necessario sapere è che, quasi ogni installer prevede la possibilità di eseguire il setup in modalità silente. Queste installazioni vengono appunto chiamate "Silent installation" e nel caso di CCleaner, il parametro richiesto è /S.
Questo paramentro, abbinato all'exe di CCleaner, ottiene il risultato di portare a termine il setup senza che sia richiesto un ulteriore intervento umano.
Ora è arrivato il momento di implementare l'installazione di CCleaner all'interno di Autoit e per farlo creeremo una piccola finestra con un semplice tasto che, una volta cliccato, porterà a termine il compito prefissato.
Per creare la nostra interfaccia grafica ci viene in aiuto un altro software, KODA.
Vediamo nella pagina successiva di cosa si tratta!
Autoit consente la creazione di interfacce grafiche molto complete, che vanno dal semplice pulsante ai menu a tendina, fino ai checkbox, radiobutton, label e così via..
Tuttavia, scrivere da codice un'intera interfaccia grafica è una impresa complicata, specie per chi è alle prime armi: per questo motivo, abbinato ad Autoit abbiamo KODA, un software in grado di aiutarci in modo abbastanza veloce nella loro realizzazione.
Il software, che non richiede installazione, è reperibile qui e una volta scaricato il file .zip sarà necessario estrarne il contenuto in una cartella. Per lanciarlo dovrete eseguire il file FD.exe
Avviato il software, ci troviamo di fronte a qualcosa di molto intuitivo e facile da usare.
Possiamo modificare la posizione degli elementi da noi scelti semplicemente trascinandoli.
Come accennato prima, per il nostro esempio creeremo una piccola finestra dotata di un pulsante che ci consentirà di installare CCleaner.
Modifichiamo quindi la dimensione della finestra a nostro piacimento ed inseriamo un pulsante al centro.
Per farlo basta cliccare sul pulsante Button presente nella barra degli strumenti e, sempre tramite mouse, crearlo nella nostra finestra disegnando un semplice rettangolo.
Ecco quello che otterremo:
Per ogni elemento che creeremo, avremo la possibilità di modificare determinati paramentri come il nome, il carattere ecc. Ecco un esempio delle proprietà dell'area interessata al pulsate Installa
Il software permette anche di simulare l'interfaccia che stiamo creando. Basta infatti cliccare sul pulsante Run for preview o premere il tasto F10 per avere una anteprima
Ecco un esempio di output:
Nota: se durante il setup di AutoIt avete selezionato Edit invece di Run, la pressione del tasto F10 non vi mostrerà l'anteprima della finestra ma farà partire l'editor mostrandovi il codice. Solo allora, premendo il tasto F5, avrete l'anteprima.
Quello che a noi interessa veramente è recuperare il codice generato da KODA che andremo poi ad inserire in AutoIt. Per farlo è sufficiente premere F9 ed ecco quello che otterremo:
Premendo sul tasto Copy to clipboard, potremo copiare negli appunti il codice da trasferire all'editor.
Ovviamente le potenzialità di Koda sono davvero molte e quello mostrato è solo un esempio.
Procediamo ora ad elaborare il codice creato con Koda.
Copiato il codice relativo all'interfaccia grafica, apriamo l'editor di AutoIt che abbiamo installato precedentemente.
Il software in questione si trova in Start -> Tutti i programmi -> AutoIt v3 -> SciTE Script Editor
Una volta avviato l'editor, incolliamo il codice copiato precedentemente. Ecco quello che avremo:
Ad un primo esame capiamo subito che abbiamo una porzione relativa all'interfaccia grafica che parte dalla stringa:
#Region ### START Koda GUI section ### Form=
E termina dove abbiamo:
#EndRegion ### END Koda GUI section ###
All'interno di questa parte di codice possiamo trovare anche un elemento fondamentale, è il caso di
$Installa = GUICtrlCreateButton("Installa", 40, 16, 113, 41)
In AutoIt le variabili vengono definite tramite $GUICtrlCreateButton
NB: I concetti di variabile come altri concetti tipo le condizioni if, else, elseif, vanno oltre lo scopo di questo tutorial e sono argomenti che sono stati senz'altro trattati all'interno di MegaLab.it.
Esaminando ancora il codice, notiamo subito un elemento chiave, si tratta di
Questa istruzione definisce il comportamento della finestra nel caso in cui venga premuta la X della GUI (l'interfaccia grafica): in quel caso lo script deve eseguire un EXIT, quindi praticamente ne interrompe l'esecuzione.
Allo stesso modo noi implementeremo l'installazione silente del nostro CCleaner, diremo cioè che, nel caso in cui verrà premuto il pulsante Installa, lo script procederà all'installazione automatica del nostro software.
Ecco quindi la parte di codice che andremo da implementare:
In questo modo noi diciamo allo script: nel caso in cui venga premuto il pulsante $installa, esegui Runwait
Runwait è il comando che esegue un programma esterno (nel nostro caso un file .exe) e ferma lo script fino a quando l'esecuzione di quel file da noi avviato non termina.
Riepilogando quindi diciamo allo script che se viene premuto il pulsante Installa, esegui quello che sta in Runwait e ferma l'esecuzione dello script di autoit fino a quando l'esecuzione di quel file non finisce.
NB: Il comando Runwait, come è possibile vedere, richiede che venga specificato il percorso completo del file che dovrà eseguire. Nel mio caso il file di installazione di CCleaner si trova nella directory principale C: da qui: "C:\ccsetup313.exe /S"
Ecco come si presenta il nostro codice arrivati a questo punto:
Vediamo nella pagina seguente come creare un messaggio che apparirà al termine dell'installazione.
Abbiamo visto nella pagina precedente come avviare l'installaizone di CCleaner in modo silente premendo il pulsante Installa. Ora procederemo con la creazione di un messaggio che apparirà alla fine dell'installazione.
La funzione che andremo ad utilizzare si chiama MsgBox
Ecco la parte di codice da inserire:
MsgBox (0, "Fine Installazione" , "Installazione Silent completa")
Quello che vedete tra parentesi indica rispettivamente:
MsgBox ( flag, "titolo", "testo")
In questo caso il flag è 0
Andiamo ora ad implementare questa stringa nel codice completo, ed ecco che infine avremo:
Siamo arrivati alla conclusione e non ci resta che salvarlo.
Per farlo basta cliccare su File -> Save as...
Il file che verrà creato sarà di tipo .au3
Come è facile intuire, il file di tipo .au3 può essere avviato solo se nel PC abbiamo installato l'editor. Nel caso in cui questo non fosse presente, il file non si può avviare. Ecco quindi che in nostro aiuto viene una utility che è presente tra quelle installate assieme al pacchetto completo di AutoIt. Si tratta di Compile script to .exe che troverete in start -> tutti i programmi -> autoit v3
Vediamo insieme come funziona.
Appena avviato Compile Script to .exe ci troviamo di fronte un qualcosa di veramente semplice:
Nella sezione Files possiamo vedere la casella Source dove andrà inserito il nome del file .au3 da convertire, mentre in Destination andrà specificata la directory dove desideriamo salvare il file convertito.
Nella sezione Options, l'utility ci permette di selezionare un file di tipo .ico da integrare all'interno del nostro .exe
Infine cliccando su Convert in pochi secondi avremo il nostro file eseguibile pronto all'uso.
Una volta ottenuto il nostro file .exe, possiamo avviarlo cliccando su di esso. Ecco come si presenta lo script completo:
Attendiamo pochi sencondi ed infine...
La nostra installazione silente di CClenaer tramite Autoit è stata completata. Troveremo l'icona di CCleaner sul desktop.
Leggendo l'articolo vi sarete resi conto che si tratta solo di una dimostrazione e che le potenzialità di questo linguaggio, cresciuto in modo esponenziale negli ultimi anni, vanno ben oltre. Personalmente trovo sia uno strumento potente ed utile per la gestione del nostro ambiente di lavoro Windows in tutti i suoi aspetti.
Non sto parlando solo di installazione di software in modalità silente ma anche della possibilità che offre di creare script per collegarsi ad esempio a server FTP ed effettuare il download di documenti, oppure automatizzare l'intera installazione e scansione di un antimalware, registrare click del mouse durante qualsiasi operazione per farne delle MACRO, insomma lo trovo straordinario. È chiaro che l'interesse che ne può derivare dipende molto dalle necessità del singolo.
Per avere una panoramica più ampia, vi consiglio di visitare il sito ufficiale e la relativa documentazione.
Quello che è stato mostrato in questo articolo è solo un piccolo esempio di ciò che è possibile ottenere con questo linguaggio e, se ne avrò occasione, scriverò ancora su questo tema!
MegaLab.it rispetta la tua privacy. Per esercitare i tuoi diritti scrivi a: privacy@megalab.it .
Copyright 2008 MegaLab.it - Tutti i diritti sono riservati