Título: [AYUDA] Mouse Hook Publicado por: ignorantev1.1 en 21 Marzo 2013, 21:53 pm Buenas, pues estoy haciendo una aplicación de la que ocupo capturar clicks del mouse en otra aplicación, casi todo bien, ya que pretendo realizar la captura cuando ambos botones del mouse sean presionados al mismo tiempo, algo así como "WM_LBUTTONDOWN & WM_RBUTTONDOWN", pero no me funciona. ¿Alguna idea?
Saludos y gracias. Título: Re: [AYUDA] Mouse Hook Publicado por: x64core en 21 Marzo 2013, 22:39 pm Buenas, pues estoy haciendo una aplicación de la que ocupo capturar clicks del mouse en otra aplicación, casi todo bien, ya que pretendo realizar la captura cuando ambos botones del mouse sean presionados al mismo tiempo, algo así como "WM_LBUTTONDOWN & WM_RBUTTONDOWN", pero no me funciona. ¿Alguna idea? Saludos y gracias. capturar ambos WM_LBUTTONDOWN, WM_RBUTTONDOWN, luego comprobar por MK_RBUTTON y MK_LBUTTON ambos esten presionados también. Título: Re: [AYUDA] Mouse Hook Publicado por: ignorantev1.1 en 21 Marzo 2013, 23:12 pm A ver:
Yo uso: Código
¿Cómo va el tuyo? ¡Saludos y gracias por tu respuesta! Título: Re: [AYUDA] Mouse Hook Publicado por: raul338 en 22 Marzo 2013, 01:33 am Quizas sea medio tonto jeje, pero probaste usando
If wParam = WM_LBUTTONDOWN AND WM_RBUTTONDOWN THen... Título: Re: [AYUDA] Mouse Hook Publicado por: ignorantev1.1 en 22 Marzo 2013, 02:52 am Sí, Raul338, ya lo había considerado, pero no va. :-\
Saludos. Título: Re: [AYUDA] Mouse Hook Publicado por: x64core en 22 Marzo 2013, 03:07 am A ver: Yo uso: Código
¿Cómo va el tuyo? ¡Saludos y gracias por tu respuesta! If wParam = WM_LBUTTONDOWN Then If GetAsyncKeyState(MK_RBUTTON) Then Debug.Print "ok" End If el mensaje fue WM_LBUTTONDOWN luego comprueba directamente el estado del otro boton del mouse, asi que debes detectar ambos WM_LBUTTONDOWN y WM_RBUTTONDOWN y luego MK_RBUTTON y MK_LBUTTON. Título: Re: [AYUDA] Mouse Hook Publicado por: ignorantev1.1 en 22 Marzo 2013, 04:08 am Pues me va ¡de pelos! ;D
Nunca consideré la función "GetAsyncKeyState" (En realidad no sabía que existía). Muchas gracias, carnales. Título: Re: [AYUDA] Mouse Hook Publicado por: Elemental Code en 22 Marzo 2013, 19:53 pm Async key state es una api y no es hook :-\
Título: Re: [AYUDA] Mouse Hook Publicado por: BlackZeroX en 23 Marzo 2013, 06:10 am Async key state es una api y no es hook :-\ Nadie dijo tal cosa... Dulces Lunas!¡. Título: Re: [AYUDA] Mouse Hook Publicado por: ignorantev1.1 en 26 Marzo 2013, 07:05 am Misma burra, nomás que revolcada:
Voy a finalizar la aplicación (la que pone los hooks), antes de que finalice doy por terminado el hook del mouse: Código
Después que "finaliza" la aplicación, la función que procesa el hook sigue funcionando lo cual provoca que se "frezee" Windows (hasta no cerrar el IDE de visual basic) o se cierra el IDE por si sólo. (porque no es todavía una aplicación, lo estoy corriendo del IDE). Para probar "mi teoría" puse "debug.print "Hola, sigo funcionando aún despues de hacer unhook ;)", y sí, el mensaje sigue apareciendo aún después de detener el programa: ¿Saben de alguna forma de terminar con el hook o manejarlo de tal manera que no suceda ésto? Perdonen, saludos y gracias. Título: Re: [AYUDA] Mouse Hook Publicado por: x64core en 26 Marzo 2013, 15:59 pm Misma burra, nomás que revolcada: Voy a finalizar la aplicación (la que pone los hooks), antes de que finalice doy por terminado el hook del mouse: Código
Después que "finaliza" la aplicación, la función que procesa el hook sigue funcionando lo cual provoca que se "frezee" Windows (hasta no cerrar el IDE de visual basic) o se cierra el IDE por si sólo. (porque no es todavía una aplicación, lo estoy corriendo del IDE). Para probar "mi teoría" puse "debug.print "Hola, sigo funcionando aún despues de hacer unhook ;)", y sí, el mensaje sigue apareciendo aún después de detener el programa: ¿Saben de alguna forma de terminar con el hook o manejarlo de tal manera que no suceda ésto? Perdonen, saludos y gracias. En que procedimiento remueves el hook? Y de que forma estas terminando? Asegurate que esta pasando sobre la funcion que remueve el hook y el retorno de la función. Si estas en presionando el boton parar del IDE, ese es el problema. Título: Re: [AYUDA] Mouse Hook Publicado por: ignorantev1.1 en 26 Marzo 2013, 16:32 pm La app tiene un procedimiento para terminar los hooks y es llamado al finalizar la aplicación (ojo: finalizar, no parar el programa en el IDE). En ese procedimiento:
Código
Con la bandera "hooks" me aseguro que se haya pasado por el procedimiento que remueve los hooks. En la función que recibe al hook: Código
No recuerdo porque hice de esta forma la función, y no entiendo bien el para qué de "CallNextHookEx"... Saludos y gracias. Título: Re: [AYUDA] Mouse Hook Publicado por: x64core en 26 Marzo 2013, 22:12 pm La app tiene un procedimiento para terminar los hooks y es llamado al finalizar la aplicación (ojo: finalizar, no parar el programa en el IDE). En ese procedimiento: Código
Con la bandera "hooks" me aseguro que se haya pasado por el procedimiento que remueve los hooks. En la función que recibe al hook: Código
No recuerdo porque hice de esta forma la función, y no entiendo bien el para qué de "CallNextHookEx"... Saludos y gracias. Yo no tengo ningun problema, Iniciar: Código: hook = SetWindowsHookEx(WH_MOUSE_LL, AddressOf MouseMonitorWinProc, App.hInstance, 0&) Remover:Código: call UnhookWindowsHookEx(hook) De lo contrario verifica el valor de UnHookWindowsHookEx y el ultimo error. |