|
| | Autore | Messaggio |
|---|
darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Tutorial 1 Lun Lug 30, 2007 4:47 pm | |
| Ciao, eccoci qua, questo mese vi spiegherò alcune cose fondamentali riguardo autoit, un linguaggio di programmazione downloadabile qui. Analizziamo alcune funzioni fondamentali: Ciclo While: se in un programma dovete eseguire una o più azioni per un ciclo infinito o molto lungo quello che vi serve è il while: | Codice: | while 1 = 1 msgbox(4096, "titolo", "testo") wend |
analizziamo questo semplice script: while 1 = 1: possiamo tradurlo in "finchè", quindi:
| Codice: | finchè 1 = 1 (sempre) msgbox(4096, "titolo", "testo") wend |
msgbox(4096, "titolo", "testo"): questa è una finestra che mostra un messaggio, 4096 è il tipo di finestra che comparirà, digitate msgbox nel file help di autoit e troverete tutte le possibili messagebox.
| Codice: | finchè 1 = 1 (sempre) esegui una finestra con un messaggio wend |
wend è soltanto la fine del ciclo (loop) while e dice che tutto quello che troverete dopo wend non sarà legato da questo ciclo while. Quindi il programma tradotto sarebbe questo: finchè uno è uguale a uno esegui una messagebox fino a quando uno diventerà diverso da uno (mai) (lo so, sembra stupido da dire ) che ulteriormente semplificato sarebbe: esegui una messagebox all'infinito. Tutto chiaro? Le variabili. Questo breve capitolo vi spiegherà come dichiarare una variabile, ovvero un numero a una o più parole che potranno cambiare in seguito a diverse condizioni... per dichiarare una variabile dobbiamo semplicemente scrivere il simbolo del dollaro ($) seguito dal nome della variabile e poi assegnarle un valore:
| Codice: | $nome_a_caso = 142 $un_altro_nome_a_caso = "questo è il valore di una variabile" msgbox(4096, $nome_a_caso, $un_altro_nome_a_caso) |
Questo script creerà una messagebox che avrà come titolo 142 e come testo "questo è il valore di una variabile". Notate che in autoit quando si scrivono numeri o variabili essi non sono mai compersi tra le "" mentre le parole sì. Se dovete scrivere numeri o parole vi conviene comprendere tutto tra le virgolette oppure usare un concatenamento, ma questo ve lo spiegherò in un altro articolo. Naturalmente, come avrete capito dal nome, le variabili possono cambiare, per esempio: [code] $var = 1 $var = $var + 1 [/code ] Notiamo subito che viene dichiarata la variabile $var e che ha come valore 1, in seguito viene aggiunto 1 al valore della variabile, quindi essa cambia. Grazie alle variabili possiamo limitare il ciclo while per un numero limitato di volte, così: [code] $var = 0 while $var <= 50 msgbox (4096, "titolo", "testo") $var = $var + 1 wend [/code] analizziamo: Viene dichiarata la variabile $var che ha come valore 0, dopodichè inizia un ciclo while che ripeterà una messagebox per 50 volte visto che dopo ogni messagebox viene aggiunto uno al valore di $var quindi: finchè $var è minore o uguale a 50 crea una messagebox e aggiungi 1 al valore di $var finchè uno sarà diverso da uno Capito tutto? Spero di sì, ora se non siete troppo stufi vi spiego solo un'ultima cosa molto importante. Le condizioni Una condizione è una cosa che si deve verificare per far avvenire altre cose: [code] if processexist ("notepad.exe") then msgbox(4096, "titolo", "Notepad è aperto") else msgbox(4096, "titolo", "Notepad è chiuso") endif [/code] analizziamo: if processexist ("notepad.exe") then: if può essere spstituito con se, processexist è una funzione che permette di controllare se un determinato processo esiste (in questo caso quello di notepad), then invece si può scambiare con allora, la seconda riga esegue una messagebox se notepad è aperto, else significa altrimenti, endif è un po' come wend e significa che tutto quello che c'è dopo endif non è più condizionato dall'esistenza del processo di notepad. Lo script tradotto potrebbe essere: [code] se il processo di notepad esiste, allora crea una messagebox positiva altrimenti crea una messagebox negativa fine della condizione. [/code] Spero di essere stato chiaro. Ultimissimo comando: ExitLoop: permette di uscire da un loop (ciclo) Ora, chi è capace di scrivere un programmino che controlli se il processo della calcolatrice di Windows esiste e che se esiste crea una messagebox positiva e altrimenti ne crea una negativa che si ripete per 35 volte prima di chiudersi (usando il while)? Spediteci i vostri script a xhacking@yahoo.it. Diteci se questo articolo vi è piaciuto e se ne volete altri di questo genere. Ciao e... alla prossima! darkjoker
Ultima modifica di il Gio Ago 23, 2007 5:11 pm, modificato 3 volte |
|  | | giozh°_° Moderatore


Numero di messaggi: 156 Data d'iscrizione: 18.08.07
 | Oggetto: Re: Tutorial 1 Dom Ago 19, 2007 6:05 pm | |
| | Codice: | $var=0 if processexist("calc.exe")then msgbox (4096,"titolo","la calcolatrice è in uso") else while $var>34 msgbox(4096,"titolo","la calcolatrice non è in uso") $var=$var+1 wend |
|
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: Tutorial 1 Lun Ago 20, 2007 10:22 am | |
| bravo, vedo che hai capito il concetto, però io avrei messo
visto che $var = 0 allora devi fare in modo che arrivi a essere minore (<) o uguale (=) a 34, nello script che hai fatto te invece quando $var diventerà 34 non sarà più contato perchè 34 non è minore di 34, ince è uguale, per questo il segno <=. capito? visto che hai compreso il concetto perchè non provi a esercitarti con il testa o croce del tutorial2?_________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | giozh°_° Moderatore


Numero di messaggi: 156 Data d'iscrizione: 18.08.07
 | Oggetto: Re: Tutorial 1 Lun Ago 20, 2007 11:32 am | |
| beh ho messo >34 perche se inizia da zero per fare 35 cicli il contato re arriva a 34, quando supera 34 significa che ha fatto già 35 cicli, quindi deve uscire..almeno in c++ facevo così |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: Tutorial 1 Mar Ago 21, 2007 4:53 pm | |
| si ma devi mettere <= perche quando arriva a 34 non esegue lo script perche fino a prova contraria 34 non è minore di 34  _________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | giga hertz apprendista

Numero di messaggi: 42 Data d'iscrizione: 01.09.07
 | Oggetto: Re: Tutorial 1 Sab Set 01, 2007 9:51 am | |
| $var = 0 if ProcessExists("calc.exe") Then MsgBox(4096, "La calcolatrice...", "è in uso") Else MsgBox(4096, "La calcolatrice...","Non è in uso") EndIf ECCO cosa mi è uscito però non ho saputo fare quella cosa delle 35 finestre |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: Tutorial 1 Mar Set 04, 2007 2:20 pm | |
| devi mettere | Codice: | $a = 0 while $a <= 34 msgbox(0, '', 'la calc non è in uso') $a = $a + 1 wend
|
se non capisci qualcosa, chiedi pure!_________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | AthanatiEste apprendista

Numero di messaggi: 15 Data d'iscrizione: 19.09.07
 | Oggetto: Re: Tutorial 1 Ven Set 21, 2007 3:50 pm | |
| Non ho capito 1 cosa,perchè qndo elimino dallo script $var=$var+1 il ciclo nn finisce mai??In poche parole a cosa serve quella parte dello script?? |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: Tutorial 1 Ven Set 21, 2007 5:12 pm | |
| allora, se lo script è cosi: | Codice: | $var > 50 while 1 = 1 ;istruzioni $var = $var + 1 wend
|
cosa fa lo script? viene dichiarata la variabile,finche la variabile sara minore di 50 istruzioni aggiungi 1 alla variabile finche la variabile non sara max o uguale a 50
quindi sarebbe + o - cosi, passaggio per passaggio:
| Codice: | while 1 > 50 istruzioni wend - while 2 > 50 istruzioni wend - while 3 > 50 istruzioni wend while 4 > 50 istruzioni wend e cosi via, fino a 50
|
quando $ var sara = o > di 50 (perche a ogni ciclo si aggiunge 1 al precedente valore) uscira dal loop, chiaro? so che non mi sono spiegato benissimo, quindi se non hai capito ti comprendo benissimo e non esitare a richiedere di nuovo, ok?_________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | AthanatiEste apprendista

Numero di messaggi: 15 Data d'iscrizione: 19.09.07
 | Oggetto: Re: Tutorial 1 Sab Set 22, 2007 3:27 pm | |
| si adesso è tutto chiaro,grazie^^ (passiamo al tutorial 2 ) |
|  | | darkjoker Admin


Numero di messaggi: 813 Data d'iscrizione: 30.07.07
 | Oggetto: Re: Tutorial 1 Lun Set 24, 2007 3:16 pm | |
| bravo... chissa, magari fra poco faro anche il tutorial 3, per ora solo un'introduzione alle gui, accontentatevi. _________________ L'unico computer sicuro, è un computer spento. Nel software esiste sempre almeno un bug, generalmente è localizzabile tra la tastiera e la sedia  |
|  | | |
Argomenti simili |  |
|
| | Permesso del forum: | Non puoi rispondere agli argomenti in questo forum
| |
| |
| |