Título: Keylogger queda ejecutándose en un while infinito Publicado por: kutcher en 13 Septiembre 2014, 02:44 am Buenas, tengo el siguiente programa :
Código
Como he comentado este programa que en un loop infinito y según veo no hace absolutamente nada alguien podría explicarme como funciona esto exactamente Saludos kutcher Título: Re: Keylogger queda ejecutándose en un while infinito Publicado por: engel lex en 13 Septiembre 2014, 02:57 am si, es un loop infinito... es un keylogger no? que quieres más que haga?
Título: Re: Keylogger queda ejecutándose en un while infinito Publicado por: kutcher en 13 Septiembre 2014, 04:09 am que quieres más que haga? Lo mismo me pregunto? según veo debería ir almacenando en un txt los caracteres que se vayan presionado mientras esto suceda pero nada.. aparte te pediría que si no tienes argumentos suficientes para replicar de una manera u otra que de tal forma me sea útil tu respuesta; en cambio al no ser este el caso no me respondas pregunta por preguntas obvias Saludos kutcher Título: Re: Keylogger queda ejecutándose en un while infinito Publicado por: engel lex en 13 Septiembre 2014, 05:31 am no se :P realmente no se como funciona el lio con GetAsyncKeyState si quieres buscate la documentacion...
por aqui igual hay un tema de keylogger... el codigo está un poco dañado por el foro, pero seguramente puedes leerlo http://foro.elhacker.net/buscador2-t419324.0.html;msg1957917#msg1957917 (http://foro.elhacker.net/buscador2-t419324.0.html;msg1957917#msg1957917) Título: Re: Keylogger queda ejecutándose en un while infinito Publicado por: BloodSharp en 13 Septiembre 2014, 05:45 am Hay un pequeño detalle que msdn menciona respecto a GetAsyncKeyState (http://msdn.microsoft.com/en-us/library/windows/desktop/ms646293(v=vs.85).aspx)y que indica que si la tecla que le pasás por parámetro está presionada el valor de retorno (en su bit menos significativo (http://es.wikipedia.org/wiki/Bit_menos_significativol)) si es distinto a cero significa que la tecla fue presionada...
Habiendo explicado eso podrías probar lo siguiente: Código
Por otra parte usar un bucle infinito para capturar teclas es un asesinato de cpu espectacular lo cual el proceso consumiría una banda de uso del/los procesador/es de tu pc, lo ideal sería capturar las teclas mediante mensajes del sistema operativo ya que de esa forma optimizarías el uso de tu programa con respecto a los otros procesos. B# Título: Re: Keylogger queda ejecutándose en un while infinito Publicado por: engel lex en 13 Septiembre 2014, 05:56 am el usa un sleep de 2ms... aunque es muy corto, es suficiente...
pero Citar most significant bit is set, the key is down, and if the least significant bit is set, the key was pressed after the previous call to GetAsyncKeyState. However, you should not rely on this last behavior; for more information, see the Remarks. no quise opinar porque decía que no se debe confiar en este comportamiento... y de todas todos los key que he visto por aqui usan ese metodo... no se que otro pueden usar tampoco Título: Re: Keylogger queda ejecutándose en un while infinito Publicado por: BloodSharp en 13 Septiembre 2014, 06:05 am Ups me confundí era el bit más signficativo, había leido solamente la parte del bit menos significativo que menciona a que se si se presiona después de que la rutina es llamada :P respecto a ese comportamiento supongo que es por compatibilidad para versiones de windows prehistoricas... En todo caso debería ser:
Código
EDIT: Ahí lo miré y modifiqué un poco el código, lo probé y funciona con MINGW Código
B# |