Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: dominosX en 25 Octubre 2014, 16:50 pm



Título: Ayuda con un Autoclick en C+
Publicado por: dominosX en 25 Octubre 2014, 16:50 pm
Buenas, me gustaría saber si alguien sabe alguna forma de mejorar este código:

Código:
#include <stdio.h>
#include <windows.h>

int main()
{
    int x, y;
    POINT posiciones;
    int status = 0;
    int activado = 0;
    for (;; Sleep(1))
    {
       if (status == 0)
       {
           if (GetAsyncKeyState(VK_F3))
           {
              GetCursorPos(&posiciones);
              x = posiciones.x;
              y = posiciones.y;
             
              printf("La coordenada es: %d %d", x, y);
              status = 1;                         
                                       
           }
       }
       else
       {
           if (GetAsyncKeyState(VK_F1) && activado == 0)
           {
             
              activado = 1;                         
                                       
           }else if (activado == 1)
           {
             if (GetAsyncKeyState(VK_F2))
             {
               activado = 0;                         
                                         
             }else
             {
               SetCursorPos(x, y);   
               Sleep(4);
               mouse_event(MOUSEEVENTF_LEFTDOWN, x, y, 0, 0);   
               mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);     
             }   
                 
           }
           
       }
       
    }
   
   
  return 0; 
}

Lo que me gustaría mejorar es la velocidad de este, he probado copiando y pegando el mouse_event pero queda de una forma muy sucia y no me gusta. ¿Alguna idea?


Título: Re: Ayuda con un Autoclick en C+
Publicado por: NOIS en 9 Noviembre 2014, 13:39 pm
Si o que quieres es que te vaya más rápido quita los Sleep, porque cuando se ejecutan ralentizan todo el programa, no solo la acción que se ejecute con la misma condición, a parte del hecho de que tienes un Sleep constante que se ejecuta siempre.