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

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Mensajes
Páginas: 1 2 3 4 5 [6] 7
51  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!!
52  Programación / Programación C/C++ / Re: [C] Hook en DLL en: 17 Septiembre 2011, 20:01 pm
¡Gracias!  ;-) Ya pude capturar el mensaje con una simple condición "if".

Suerte  :D
53  Programación / Programación C/C++ / Re: [C] Hook en DLL en: 17 Septiembre 2011, 18:41 pm
Pues me quedaría GWLP_WNDPROC en nIndex donde tengo WM_MOUSEMOVE. Donde es que debería poner el mensaje que quiero interceptar?

Gracias.
54  Programación / Programación C/C++ / Re: [C] Hook en DLL en: 17 Septiembre 2011, 15:52 pm
Ahi te lo dice claramente, tenes que hacer un casting

Código:
HWND hwnd = (HWND)590396;

Igual eso no sirve, el HWND cambiara con cada ejecucion asi que tenes que conseguir un metodo para encontrar la ventana en tiempo de ejecucion ...

PD. Las DLLs tienen DllMain y no main.

Gracias. El hwnd lo puedo obtener en cada ejecución de forma automática eso no es problema. Ya puse para que haga el hook en el hwnd indicado al cargarse la DLL. Pero aún así sigue sin interceptar el mensaje... hay algún error en donde indiqué el mensaje o el hwnd? Ya que creo que esta todo bien pero no me avisa al interceptar el mensaje WM_SETTEXT como debería hacerlo. También probé con WM_MOUSEMOVE y otros, pero tampoco funciona. Te dejo mi código:

Código:
WNDPROC default_procedure;
LRESULT CALLBACK hook(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);

BOOL APIENTRY DllMain (HINSTANCE hInst     /* Library instance handle. */ ,
                       DWORD reason        /* Reason this function is being called. */ ,
                       LPVOID reserved     /* Not used. */ )

{
    switch (reason)
    {
      case DLL_PROCESS_ATTACH:
        HWND hwnd = (HWND)590396;
        default_procedure = (WNDPROC)SetWindowLongPtr(hwnd, WM_MOUSEMOVE, (LONG)hook);

      case DLL_PROCESS_DETACH:
        break;

      case DLL_THREAD_ATTACH:
        break;

      case DLL_THREAD_DETACH:
        break;
    }

    /* Returns TRUE on success, FALSE on failure */
    return TRUE;
}

LRESULT CALLBACK hook(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){
        // Haces tu trabajo...
        MessageBox (0, "Message Detected", "DLL", MB_ICONINFORMATION);
        return CallWindowProc(default_procedure, hwnd, message, wParam, lParam);
}

En este caso usé la constante WM_MOUSEMOVE

Gracias :)
55  Programación / Programación C/C++ / Re: [C] Hook en DLL en: 17 Septiembre 2011, 14:59 pm
Gracias! Me sirve un montón esto. Mira como a quedado mi código:

Código:
WNDPROC default_procedure;
LRESULT CALLBACK hook(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
 
int main(){
HWND hwnd = 590396;
default_procedure = (WNDPROC)SetWindowLongPtr(hwnd, WM_SETTEXT, (LONG)hook);
}
 
LRESULT CALLBACK hook(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){
// Haces tu trabajo...
    MessageBox (0, "Message Detected", "DLL", MB_ICONINFORMATION);
 
return CallWindowProc(default_procedure, hwnd, message, wParam, lParam);
}

Pero al compilar me da un error, sobre el "HWND hwnd = 590396;". El error es: "[Warning] initialization makes pointer from ineteger without a cast". Que estoy haciendo mal?

Gracias nuevamente :)
56  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!
57  Programación / Programación C/C++ / Re: SendMessage en: 14 Septiembre 2011, 19:03 pm
Thanks...
58  Programación / Programación Visual Basic / Re: Verificar y matar proceso en: 14 Septiembre 2011, 00:43 am
Puedes usar KILL_PROC_BY_NAME.
59  Programación / Programación C/C++ / Re: SendMessage en: 14 Septiembre 2011, 00:18 am
Gracias. Perdón por mi ignorancia, pero las constantes y la func sendmessage no necesitan algún tipo de declaración?

Saludos
60  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.
Páginas: 1 2 3 4 5 [6] 7
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines