Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: GonzaFz en 13 Junio 2012, 20:10 pm



Título: Ayuda con click usando SendMessage (presionar y levantar)
Publicado por: GonzaFz en 13 Junio 2012, 20:10 pm
Bueno tengo todo el codigo y entiendo bastante bien como se utiliza, mi codigo es:

C#
Código
  1. [DllImport("user32.dll")]
  2.        static extern bool SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, Int32 lParam);
  3.  
  4. public static int MakeLParam(int LoWord, int HiWord)
  5.        {
  6.            return ((HiWord << 16) | (LoWord & 0xffff));
  7.        }
  8.  
  9.        public static int MakeWParam(int LoWord, int HiWord)
  10.        {
  11.            return ((HiWord << 16) | (LoWord & 0xffff));
  12.        }
  13.        #endregion
  14.  
  15. // DECLARO LOS CLICKS
  16. int MS_IZQUIERDOABAJO = 0x0201,
  17. MS_IZQUIERDOARRIBA = 0x0202;
  18.  
  19. private void BuscarClic(int x, int y)
  20. {
  21. // ESTABLECE LAS COORDENADAS
  22. Int32 lPara = MakeLParam((int)x, (int)y);
  23.  
  24.                IntPtr wParam = IntPtr.Zero;
  25.  
  26. // PRESIONO EL CLIC Y LO LEVANTO
  27.                SendMessage(handle, MS_IZQUIERDOABAJO , wParam, lPara);
  28.                SendMessage(handle, MS_IZQUIERDOARRIBA, wParam, lPara);
  29.  
  30. }

El problema es que funciona de una manera rara. Cuando lo ejecuto presiona el boton izquierdo y luego lo levanta pero es como que igualmente sigue presionado , es decir el MS_IZQUIERDOABAJO sigue activo..
Mas claro: Presiona el boton y lo levanta mientras sigue presionado.. ¿Se entiende?

// SE ME OCURRIO UNA MANERA MAS FACIL DE DECIRLO

Esos eventos no trabajan juntos, cada uno es independiente por lo que podriamos decir que cuando se lo llama sucede lo siguiente:
MS_IZQUIERDOABAJO = se activa
MS_IZQUIERDOARRIBA = se activa

Es decir se realizan las dos acciones pero nunca se las desactiva, es como que se levanta el mouse pero se sigue presionando
Es tipo que el mouse virtual se queda pegado a ese lugar y no se suelta mas..

espero que me puedan ayudar. Gracias =).


Título: Re: Ayuda con click usando SendMessage (presionar y levantar)
Publicado por: GonzaFz en 15 Junio 2012, 00:44 am
Conseguí solucionarlo, solo debía simular un movimiento del mouse a ese lugar.