elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Temas
Páginas: 1 [2]
11  Programación / Programación General / Basic - C en: 2 Octubre 2011, 03:16 am
Buenas a todos, simplemente una duda: Si yo tengo un bucle en Basic, que tarda, en realizar todo lo indicado, 5 segundos. Al ser C un lenguaje rápido, ese mismo bucle tardaría menos o no tiene nada que ver?  :rolleyes:

Gracias¡

P.D: Es bucle For
12  Programación / Programación Visual Basic / Buscar en ListBox en: 27 Septiembre 2011, 03:34 am
Buenas a todos, a continuación les dejo mi código el cual agrega a un listbox el color del píxel en donde se encuentra el mouse, al moverse el mismo. Para saber cuando se mueve he instalado un hook mediante SetWindowsHookEx, pero eso no es lo importante. El problema es que utilizo SendMessage, con la Constante LB_FINDSTRINGEXACT la cual busca una Cadena. Pero me estoy volviendo loco ya que hago una condición (sentencia if) la cual dicta que si devuelva False, la función que busca el Color en el listbox, no agregue al color obtenido. Esto para evitar que se me agreguen múltiples veces el mismo color, y después me vuelvo loco identificando cada uno. Pero no me devuelve false, o algún error estoy cometiendo en el código que no puedo identificar, por eso estoy aqui! He aquí el código:

La función que busca el string:

Código:
Public Function Encuentra(Frase As String) As Boolean
 
Dim Indice As Long
     
    ' Tipo de búsqueda
    Indice = SendMessage(fMain.List1.hwnd, LB_FINDSTRINGEXACT, -1, Frase)
     
     
    If Indice < 0 Then
        'no se encontró
        Encuentra = False
    Else
        ' se encontró la frase entonces la selecciona
        Encuentra = True
    End If
   
End Function

Aquí donde se utiliza:

Código:
Dim hdc As Long

    Call GetCursorPos(Mouse)

'Get Color
hdc = GetDC(0)
pxColor = GetPixel(hdc, Mouse.x, Mouse.y)
ReleaseDC 0, hdc

'Set color
Picture1.BackColor = pxColor


If Encuentra(Hex(pxColor)) = False Then
    List1.AddItem Hex(pxColor)
End If

Por algúna razón me agrega varias veces el mismo color encontrado, lo cual no debería, si es que lo encuentra en la condición planteada.

Gracias desde ya, saludos!
13  Programación / Programación Visual Basic / Píxeles y Bucle For en: 18 Septiembre 2011, 20:40 pm
Buenas a todos, estoy realizando una aplicacion la cual en un bucle for recorre, moviende el mouse, una determinada área y al encontrar un píxel con determinado color, se frene. EL PROBLEMA es que, al recorrer el área moviendo el cursor con el bucle previamente mencionado anda todo perfecto, con una rapidez considerable, en cambio cuando "coloco" el código para verificar si encuentra el píxel lo hace un 90% más lento. Este es mi código:

Código
  1. Dim iX As Integer
  2. Dim iY As Integer
  3. Dim hdc As Long, pxColor As Double
  4.  
  5.    Call GetCursorPos(Mouse)
  6.    For iX = Mouse.x To Mouse.x + 100
  7.        For iY = Mouse.y To Mouse.y + 75
  8.            Call SetCursorPos(iX, iY)
  9.            'Hasta acá todo bien, lo que viene ahora es lo que lenta muchísimo mi aplicación...
  10.  
  11.            hdc = GetDC(0)
  12.            pxColor = GetPixel(hdc, Mouse.x, Mouse.y)
  13.            ReleaseDC 0, hdc
  14.            Me.Caption = Hex(pxColor)
  15.            If Me.Caption = "AA431B" Then
  16.                Exit For
  17.            End If
  18.            '//
  19.        Next iY
  20.    Next iX

No se cual es el problema, por qué lo hace muchísimo mas lento. Ya que sin verificar el color lo hace en unas milésimas de segundo, y luego con el código para verificar tarda unos 20 o 30 en recorrer el mouse todo el área. Pues ni me imagino cuando haga áreas mas grandes.

Saludos.
14  Programación / Programación Visual Basic / SendMessage en: 18 Septiembre 2011, 17:19 pm
Buenas a todos. Tengo un par de dudas. Quisiera saber si es posible enviar un mensaje a un determinado color que puedo obtener con el GetPixel(). Y también si puedo enviar un mensaje a una determinada cadena como puede ser "Hola" en un determinado hwnd. O algún tipo de cosa parecida con lo mencionado anteriormente.

Saludos!!
15  Programación / Programación C/C++ / [C] Hook en DLL en: 16 Septiembre 2011, 15:53 pm
Buenas a todos nuevamente. Estoy haciendo una DLL normal en C, la cual inyecto a un programa. Tengo que hookear una parte del programa el cual tengo el hwnd e interceptar un mensaje. Qué función debería usar para instalar el hook? SetWindowLong? Podrían dejarme algún ejemplo?

Gracias!
16  Programación / Programación C/C++ / SendMessage en: 13 Septiembre 2011, 21:22 pm
Buenas a todos me estoy iniciando en C. Alguno me podría dejar un ejemplo claro de SendMessage en C, y su respectiva declaración? Porque aunque no lo crean no lo he podido encontrar.

Gracias de antemano.
17  Programación / Programación Visual Basic / Inyección de DLL (Basic) en: 4 Septiembre 2011, 23:23 pm
Buenas os molesto nuevamente debido a que tengo una inquietud. He creado una dll normal con el tutorial de elGuille en Basic, e intento inyectarla y ejecutar una función con Cheat Engine, a un proceso. El tema es que se inyecta correctamente pero al ejecutar una función, en este caso "Saludo()" tira un error de "Enviar - No Enviar" y el proceso inyectado se cierra.

He aquí el código de mi DLL. Cabe aclarar que el Linker fue modificado para poder generar DLL normales.

Código:
'
' ©Guillermo 'guille' Som, 2006
'------------------------------------------------------------------------------
Option Explicit

Public Const DLL_PROCESS_DETACH = 0
Public Const DLL_PROCESS_ATTACH = 1
Public Const DLL_THREAD_ATTACH = 2
Public Const DLL_THREAD_DETACH = 3

Public Function Saludo()
    MsgBox ("DLL en VB")
End Function

Public Function Suma(ByVal n1 As Double, ByVal n2 As Double) As Double
    Suma = n1 + n2
End Function


'
Public Function DllMain(hInst As Long, fdwReason As Long, lpvReserved As Long) As Boolean
   Select Case fdwReason
      Case DLL_PROCESS_DETACH
         ' No per-process cleanup needed
      Case DLL_PROCESS_ATTACH
            DllMain = True
      Case DLL_THREAD_ATTACH
'         ' No per-thread initialization needed
      Case DLL_THREAD_DETACH
'         ' No per-thread cleanup needed
   End Select
End Function

La única función que necesito es la de "Saludo()"

También he aquí el archivo .DEF de la DLL correspondiente:

Código:
NAME PruebaINY
LIBRARY PruebaINY
DESCRIPTION "Prueba de DLL creada con VB6"
EXPORTS Saludo @1
        Suma @2
        DllMain @3

Gracias, saludos.
18  Programación / Programación C/C++ / Usar DLL de VB6 en C en: 4 Septiembre 2011, 19:33 pm
Buenas a todos, he creado una DLL en VB6 pero necesito llamar a la misma desde otra DLL en C. He aquí el código para llamarla en VB6 aver si pueden decirme como llamarla en C y utilizarla en el main de la DLL, lo primero que carga.

Código:
Private Declare Function Saludo Lib "Prueba.dll" () As String

Y el código de la función saludo en la DLL de vb6 es el siguiente:

Código:
Option Explicit

Public Function Saludo() As String
    Saludo = "Hola desde la DLL Prueba"
End Function

El código es de la página de "elGuille".

Gracias.
Páginas: 1 [2]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines