Hola,
os traigo algunas funciones que actúan como AntiEmulation que se nos ocurrieron hablando por el grupo de skype de Indetectables. La idea es que no se ejecute X función hasta que no haya algún cambio.
#cs ----------------------------------------------------------------------------
 AutoIt Version: 3.3.8.1
 Author:         Blau
 Thanks to: SadFud
#ce ----------------------------------------------------------------------------

#include <Misc.au3>

Local $aParams[3] ;Array que contiene los parámetros del callback
$aParams[0] = "CallArgArray" ;Obligatorio para la función Call
$aParams[1] = "Caca" ;$sTitle
$aParams[2] = "Pedo" ;$sMessage

AntiEmulationByMouse("Funciona", $aParams)
AntiEmulationByFreeSpace("Funciona", $aParams)
AntiEmulationByPixel("Funciona", $aParams)
AntiEmulationByWindow("Funciona", $aParams)
AntiEmulationByKey(41, "Funciona", $aParams)

Func AntiEmulationByMouse($sFunction, $aParams)
    Local $aPos = MouseGetPos() ;Obtiene la posición del ratón
    Local $bPos = MouseGetPos() ;Obtiene la posición del ratón otra vez
    While $aPos[0] = $bPos[0] And $aPos[1] = $bPos[1] ;Si las posiciones son iguales
		Sleep(100)	;Esperamos 100 milisegundos
        $bPos = MouseGetPos() ;Obtenemos de nuevo la posición del ratón
    WEnd
	Call($sFunction, $aParams) ;Llamamos a la función callback
EndFunc

Func AntiEmulationByWindow($sFunction, $aParams)
    Local $aWindow = WinGetTitle("[ACTIVE]")
    Local $bWindow = WinGetTitle("[ACTIVE]")
    While $aWindow = $bWindow
		Sleep(100)
        $bWindow = WinGetTitle("[ACTIVE]")
    WEnd
	Call($sFunction, $aParams)
EndFunc

Func AntiEmulationByKey($sKey, $sFunction, $aParams) ;https://www.autoitscript.com/autoit3/docs/libfunctions/_IsPressed.htm
    While Not _IsPressed($sKey)
		Sleep(100)
    WEnd
	Call($sFunction, $aParams)
EndFunc

Func AntiEmulationByFreeSpace($sFunction, $aParams)
    Local $aSpace = DriveSpaceFree(@HomeDrive & "\")
    Local $bSpace = DriveSpaceFree(@HomeDrive & "\")
    While $aSpace = $bSpace
		Sleep(100)
        $bSpace = DriveSpaceFree(@HomeDrive & "\")
    WEnd
	Call($sFunction, $aParams)
EndFunc

Func AntiEmulationByPixel($sFunction, $aParams)
	Local $nRandomX = Random(0, @DeskTopHeight, 1)
	Local $nRandomY = Random(0, @DeskTopWidth, 1)
    Local $aPixel = PixelGetColor ($nRandomX, $nRandomY)
    Local $bPixel = PixelGetColor ($nRandomX, $nRandomY)
    While $aPixel = $bPixel
		Sleep(100)
       $bPixel = PixelGetColor ($nRandomX, $nRandomY)
    WEnd
	Call($sFunction, $aParams)
EndFunc

Func Funciona($sTitle, $sMessage)
	MsgBox(0, $sTitle, $sMessage)
EndFunc
Gracias por las funciones Blau. Nunca he usado Call en AutoIt(Por alguna razón que desconozco no me gusta)

en la ultimas versiones de AutoIt podrías hacer algo así:

$myFunction("hola","mundo")


Saludos
Imagen
Pink escribió:Gracias por las funciones Blau. Nunca he usado Call en AutoIt(Por alguna razón que desconozco no me gusta)

en la ultimas versiones de AutoIt podrías hacer algo así:

$myFunction("hola","mundo")


Saludos
No conocía esa característica de las nuevas versiones, no uso mucho AutoIt así que me quedé en la 3.3.8.1.
Buenas UDFs
666699966999999996699966699999
666699966999999996699966969999
699999966999999996699966996999
666699966999999996699966999699
666699966999999996699966999699
699999996699999966999966996999
699999999669999669999966969999
699999999996666999999966699999
https://reversecodes.wordpress.com

http://indeseables.github.io/
Responder

Volver a “Fuentes”