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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  GetAsyncKeyState() devuelve cosas raras
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: GetAsyncKeyState() devuelve cosas raras  (Leído 4,164 veces)
sancakoky

Desconectado Desconectado

Mensajes: 60


Ver Perfil
GetAsyncKeyState() devuelve cosas raras
« en: 21 Noviembre 2011, 09:35 am »

Una imagen vale mas que mil palabras

Me estoy volviendo loco, SI NO PRESIONO NINGUNA TECLA porque me devuelve un numero entero largisimo, y lo mas raro todavia esque si lo ejecuto de nuevo me devuelve otro numero.

El codigo es de lo mas sencillo

 For i = 32 To 255
            resultado = GetAsyncKeyState(i)
            If Not resultado = 0 Then
                MsgBox(resultado)
            End If
Next

Y RESULTADO DEVUELVE LO QUE LE DA LA GANA


En línea

Unbr0ken

Desconectado Desconectado

Mensajes: 248



Ver Perfil
Re: GetAsyncKeyState() devuelve cosas raras
« Respuesta #1 en: 21 Noviembre 2011, 10:15 am »

Quizá debas leer ésto.

En un futuro, averigua como funciona bien una API antes de usarla.


En línea

Cita de: Snowcrash
Discutir con desconocidos por internet es un ejercicio de imbéciles; todos acaban siendo quinceañeros arrogantes con cantidades infinitas de tiempo libre.

NO resuelvo dudas vía MP, para algo está el foro.
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: GetAsyncKeyState() devuelve cosas raras
« Respuesta #2 en: 21 Noviembre 2011, 10:50 am »

En lugar de usar el Timer y el API GetAsyncKeyState function, sera mejor que instales un Hook al teclado.

Aun asi la MSDN dice claramente:

Citar
Return value

If the function succeeds, the return value specifies whether the key was pressed since the last call to GetAsyncKeyState, and whether the key is currently up or down. If the 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.

The return value is zero for the following cases:

    The current desktop is not the active desktop
    The foreground thread belongs to another process and the desktop does not allow the hook or the journal record.

Para saber esto solo aplica mascaras de bits.

Dulces Lunas!¡.
« Última modificación: 21 Noviembre 2011, 10:55 am por BlackZeroX (Astaroth) » En línea

The Dark Shadow is my passion.
sancakoky

Desconectado Desconectado

Mensajes: 60


Ver Perfil
Re: GetAsyncKeyState() devuelve cosas raras
« Respuesta #3 en: 21 Noviembre 2011, 11:19 am »

Unbr0ken se perfectamente como funciona esa funcion, pero no se porque esta pasando el numero de handle de la ventana activa.
BlackZeroX (Astaroth) ahora mismo estoy leyendo sobre hook y Subclassing pero no me estoy enterando bien de como crearlos y usarlos.

Lo que no tiene logica esque en la torre el mismo codigo me funciona perfectamente y en le portatil me saque el handle directamente.
¿Problema de sistema operativo o del teclado?

Creo que leere y releere sobre hooks.
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: GetAsyncKeyState() devuelve cosas raras
« Respuesta #4 en: 21 Noviembre 2011, 16:18 pm »

hooks es lo mejor para esto, busca sobre eso que hay bastante y creo que aca en el foro ya se posteo.

saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Más cosas raras grabando DVD's
Software
el-brujo 2 1,742 Último mensaje 15 Marzo 2005, 20:53 pm
por el-brujo
Cosas raras con mi pc =S
Software
yurkila 5 2,842 Último mensaje 12 Marzo 2011, 02:07 am
por JoseLuisGomez
Problema con la API GetAsyncKeyState vb.net
.NET (C#, VB.NET, ASP)
Senior++ 3 3,697 Último mensaje 21 Marzo 2012, 22:24 pm
por kub0x
bromilla con GetAsyncKeyState
Programación Visual Basic
asdexiva 2 2,396 Último mensaje 20 Octubre 2013, 14:52 pm
por asdexiva
Que cosas más raras le pasan al móvil de este familiar
Seguridad
Terminator5 3 3,205 Último mensaje 2 Marzo 2023, 20:16 pm
por Machacador
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines