Analizza Pixel 1.0, Trova le coordinate e il colore dei pixel

« Older   Newer »
  Share  
PORIEJ
CAT_IMG Posted on 11/6/2010, 22:21     +1   -1




Questo programmino l'ho fatto poco tempo fa (è 1 mesetto e mezzo che studio autoit) e mi è servito molto, e mi servirà principalmente per i bot.

E' infatti un'utility pensata per chi come me a volte sviluppa dei bot e ha bisogno di vedere velocemente e senza tanto casino coordinate e colore dei pixel.

Cosa fa:
Vi dice la posizione in coordinate cartesiane del mouse ed il colore convertito in esadecimale del Pixel su cui siete col mouse in quel momento.

Inoltre, vi permetterà attraverso una serie di hotkey (che potete vedere nel menù di aiuto richiamabile con Alt+H) vi permetterà di copiare nella clipboard i vari valori anche uno alla volta o mettendo nel contempo in pausa lo script.

Il programma resta sopra agli altri quindi potere usarlo anche mentre giocate o avete aperte altre finestre, intanto continuerà il suo lavoro.

Spero che vi sia utile, e ogni commento o richiesta di miglioramento o funzioni particolari, è ben accetto :D

http://rapidshare.com/files/397968056/Anal...el_1.0.exe.html

Mirror alternativo:

www.mediafire.com/?myymjm2yuen

Screenshot:
image

Sorgente:

SPOILER (click to view)
#include <guiconstantsex.Au3>
#include <windowsconstants.Au3>
Opt('GUIOnEventMode', '1')
HotKeySet("!h", "_Help")
HotKeySet('!p', '_PauseP')
HotKeySet('!l', '_PauseL')
HotKeySet('!o', '_CopyColor')
HotKeySet('!i', '_CopyCoord')
HotKeySet('!u', '_CopyColorCoord')

Global $Pause = False
$GUI = GUICreate('Analizza Pixel v1.0', '150', '70', '-1', '-1', '-1', '128')
GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit')
$Input = GUICtrlCreateInput('', '0', '0', '150', '20', '1')
GUICtrlSetFont($Input, '9', '600', '', 'Arial')
$Input2 = GUICtrlCreateInput('', '0', '20', '150', '20', '1')
GUICtrlSetFont($Input2, '9', '600', '', 'Arial')
GUICtrlCreateLabel("Creato da NATTA" & @CRLF & "Premi ALT+H per le istruzioni", 0, 40, 150, 30)
GUICtrlSetState($Input, $GUI_DISABLE)
GUICtrlSetState($Input2, $GUI_DISABLE)
GUISetState(@SW_SHOW, $GUI)
WinSetOnTop($GUI, '', '1')

While '1'
If $Pause = False Then
$Pos = MouseGetPos()
$Pos2 = $Pos[0] & "," & $Pos[1]
$Pixel = PixelGetColor($Pos['0'], $Pos['1'])
$Pixel = '0x' & Hex($Pixel, '6')
GUICtrlSetData($Input, $Pixel)
GUICtrlSetData($Input2, $Pos2)
EndIf
Sleep('15')
WEnd

Func _PauseP()
If $Pause = False Then
$Pause = True
ClipPut(GUICtrlRead($Input) & " " & GUICtrlRead($Input2))
Else
$Pause = False
EndIf
EndFunc ;==>_PauseP

Func _PauseL()
If $Pause = False Then
$Pause = True
Else
$Pause = False
EndIf
EndFunc ;==>_PauseL

Func _CopyColor()
ClipPut(GUICtrlRead($Input))
EndFunc ;==>_CopyColor

Func _CopyCoord()
ClipPut(GUICtrlRead($Input2))
EndFunc ;==>_CopyCoord

Func _CopyColorCoord()
ClipPut(GUICtrlRead($Input) & " " & GUICtrlRead($Input2))
EndFunc ;==>_CopyColorCoord

Func _Help()
GUISetState(@SW_HIDE, $GUI)
MsgBox(0, "Analizza Pixel 1.0 by NATTA", "Mostra le coordinate del cursore e il colore del pixel in esadecimale, il programma resta automaticamente" & @CRLF & @CRLF & _
" sopra agli altri, quindi potete usarlo durante l'utilizzo di giochi e programmi"& @CRLF & @CRLF & _
"Premi Alt+P per bloccare la selezione e copiarla in menoria" & _
" o Alt+L per mettere solamente in pausa" & @CRLF & @CRLF & "Premi Alt+O per copiare il colore in memoria" & @CRLF & @CRLF & _
"Premi Alt+I per copiare le coordinate del mouse in memoria" & @CRLF & @CRLF & "Premi Alt+U per copiare le coordinate " & _
"del mouse e il colore in memoria" & @CRLF & @CRLF & "La tua risoluzione dello schermo: " & @DesktopWidth & "x" & @DesktopHeight & _
@CRLF & @CRLF & "Creato da NATTA")
GUISetState(@SW_SHOW, $GUI)
EndFunc ;==>_Help

Func _Exit()
Exit
EndFunc ;==>_Exit


Edited by PORIEJ - 12/6/2010, 01:21
 
Top
Gianlu-thebest
CAT_IMG Posted on 11/6/2010, 23:47     +1   -1




Su questo forum c'è OpenSource.

Mettere il source in un archivio o nella discussione è obbligatorio.
Metti il source o chiudo
 
Top
PORIEJ
CAT_IMG Posted on 12/6/2010, 00:21     +1   -1




Ok provvedo, colpa mia, nel regolamento non l'avevo letto, scusa!
 
Top
Grandebestia
CAT_IMG Posted on 12/6/2010, 10:00     +1   -1




Molto bello ed utile finalmente qualcosa di interessante (anche se avrai ancora da fare xD).
 
Top
PORIEJ
CAT_IMG Posted on 12/6/2010, 10:52     +1   -1




CITAZIONE (Grandebestia @ 12/6/2010, 11:00)
Molto bello ed utile finalmente qualcosa di interessante (anche se avrai ancora da fare xD).

:lol:
Grazie! Sono contento che serva a qualcuno xD
Se ci vorresti qualcosa in più chiedi pure, vedo cosa posso fare ;)
 
Top
Gianlu-thebest
CAT_IMG Posted on 12/6/2010, 11:31     +1   -1




Wow, è molto bello :)

ti faccio anche i complimenti perchè hai avuto il tempo di offuscare l'eseguibile (ù.ù)
 
Top
PORIEJ
CAT_IMG Posted on 12/6/2010, 11:34     +1   -1




CITAZIONE (Gianlu-thebest @ 12/6/2010, 12:31)
Wow, è molto bello :)

ti faccio anche i complimenti perchè hai avuto il tempo di offuscare l'eseguibile (ù.ù)

Grazie!

Posso chiederti come lo vedi l'offuscamento? Hai provato a fare reverse engineering sul file o cosa? Avevo letto sul forum di gente che cercava di estrarre lo script dall'eseguibile, e ci riusciva spesso, ma che nelle ultime versioni non era piu possibile...

Cmq è inutile l'avevo fatto solo xk non sapevo che era obbligatorio postare i source.
 
Top
Gianlu-thebest
CAT_IMG Posted on 12/6/2010, 11:53     +1   -1




Comunque un consiglio:

in autoit i numeri si mettono senza virgolette o apici
CODICE
msgbox(0,"ciao","Questo è un numero senza virgolette: "&1254555&@CRLF&"In più questo esempio è stupido :)")


per l'offuscamento..cosa si usa per decompilare? (lo dice la prola stessa..)

lo uso quando non c'è il source..una volta infati mi è capitato un programma pericoloso (quell'utente è stato bannato :))
 
Top
PORIEJ
CAT_IMG Posted on 12/6/2010, 11:55     +1   -1




CITAZIONE (Gianlu-thebest @ 12/6/2010, 12:49)
Comunque un consiglio:

in autoit i numeri si mettono senza virgolette o apici
CODICE
msgbox(0,"ciao","Questo è un numero senza virgolette: "&1254555&@CRLF&"In più questo esempio è stupido :)")

Ottimo consiglio, non sapevo di questa possibilità. Dimmi una cosa, facendo come dici tu in questo esempio, il numero non è più una stringa ma resta considerato numero giusto? Se è così è utilissimo perchè ho sempre avuto rompimenti di scatole e mi toccava usare la funzione Number che è un pò buggata mi pare e avevo avuto diversi problemi in passato....

Ah ok per il decompilaggio. Credevo usassi qualche tool più specifico per autoit. Quindi sai anche un pò di assembly o cosa?
 
Top
Gianlu-thebest
CAT_IMG Posted on 12/6/2010, 12:25     +1   -1




si rimane un numero...

No, un semplice decompilatore scaricato...il suo lavoro lo fa bene :) xD
 
Top
PORIEJ
CAT_IMG Posted on 12/6/2010, 14:46     +1   -1




CITAZIONE (Gianlu-thebest @ 12/6/2010, 13:25)
si rimane un numero...

No, un semplice decompilatore scaricato...il suo lavoro lo fa bene :) xD

perfetto ;) Thanks
 
Top
lollofieretto
CAT_IMG Posted on 13/6/2010, 18:51     +1   -1




veramente bellooo... mi serve anche a me x i bot...
 
Top
PORIEJ
CAT_IMG Posted on 13/6/2010, 20:52     +1   -1




Grazie :D
 
Top
PORIEJ
CAT_IMG Posted on 18/12/2010, 00:58     +1   -1




Versione aggiornata con sorgente:

Eseguibile compilato:

www.multiupload.com/94FBNX2KA0

Screen:
image

Sorgente:

CITAZIONE
#include <guiconstantsex.Au3>
#include <windowsconstants.Au3>
Opt('GUIOnEventMode', '1')
HotKeySet("!h", "_Help")
HotKeySet('!p', '_PauseP')
HotKeySet('!l', '_PauseL')
HotKeySet('!o', '_CopyColor')
HotKeySet('!i', '_CopyCoord')
HotKeySet('!u', '_CopyColorCoord')

Global $Pause = False
$GUI = GUICreate('Analizza Pixel v1.0', '206', '70', '-1', '-1', '-1', '128')
GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit')
$Input = GUICtrlCreateInput('', '0', '0', '150', '20', '1')
GUICtrlSetFont($Input, '9', '600', '', 'Arial')
$Input2 = GUICtrlCreateInput('', '0', '20', '150', '20', '1')
GUICtrlSetFont($Input2, '9', '600', '', 'Arial')
GUICtrlCreateLabel("Creato da NATTA" & @CRLF & "Premi ALT+H per le istruzioni", 0, 40, 150, 30)
GUICtrlSetState($Input, $GUI_DISABLE)
GUICtrlSetState($Input2, $GUI_DISABLE)
GUICtrlCreateLabel("Colore:", 160, 0, 31, 17)
$InpColor = GUICtrlCreateInput("", 152, 20, 52, 20)
GUICtrlSetState($InpColor, $GUI_DISABLE)
GUISetState(@SW_SHOW, $GUI)
WinSetOnTop($GUI, '', '1')

While '1'
If $Pause = False Then
$Pos = MouseGetPos()
$Pos2 = $Pos[0] & "," & $Pos[1]
$Pixel = PixelGetColor($Pos['0'], $Pos['1'])
$Pixel = '0x' & Hex($Pixel, '6')
GUICtrlSetData($Input, $Pixel)
GUICtrlSetData($Input2, $Pos2)
GUICtrlSetBkColor($InpColor,$Pixel)
EndIf
Sleep('15')
WEnd

Func _PauseP()
If $Pause = False Then
$Pause = True
ClipPut(GUICtrlRead($Input) & " " & GUICtrlRead($Input2))
Else
$Pause = False
EndIf
EndFunc ;==>_PauseP

Func _PauseL()
If $Pause = False Then
$Pause = True
Else
$Pause = False
EndIf
EndFunc ;==>_PauseL

Func _CopyColor()
ClipPut(GUICtrlRead($Input))
EndFunc ;==>_CopyColor

Func _CopyCoord()
ClipPut(GUICtrlRead($Input2))
EndFunc ;==>_CopyCoord

Func _CopyColorCoord()
ClipPut(GUICtrlRead($Input) & " " & GUICtrlRead($Input2))
EndFunc ;==>_CopyColorCoord

Func _Help()
GUISetState(@SW_HIDE, $GUI)
MsgBox(0, "Analizza Pixel 1.0 by NATTA", "Mostra le coordinate del cursore e il colore del pixel in esadecimale, il programma resta automaticamente" & @CRLF & @CRLF & _
" sopra agli altri, quindi potete usarlo durante l'utilizzo di giochi e programmi"& @CRLF & @CRLF & _
"Premi Alt+P per bloccare la selezione e copiarla in menoria" & _
" o Alt+L per mettere solamente in pausa" & @CRLF & @CRLF & "Premi Alt+O per copiare il colore in memoria" & @CRLF & @CRLF & _
"Premi Alt+I per copiare le coordinate del mouse in memoria" & @CRLF & @CRLF & "Premi Alt+U per copiare le coordinate " & _
"del mouse e il colore in memoria" & @CRLF & @CRLF & "La tua risoluzione dello schermo: " & @DesktopWidth & "x" & @DesktopHeight & _
@CRLF & @CRLF & "Creato da NATTA")
GUISetState(@SW_SHOW, $GUI)
EndFunc ;==>_Help

Func _Exit()
Exit
EndFunc ;==>_Exit



Edited by PORIEJ - 18/12/2010, 03:55
 
Top
Cale92
CAT_IMG Posted on 18/12/2010, 09:56     +1   -1




bello però quando aggiungi nuove versioni modifica il primo post altrimenti uno si deve leggere tutti i messaggi per cercare le nuove versioni e se si è discusso molto diventa un casino..
 
Top
17 replies since 11/6/2010, 22:21   424 views
  Share