mouse detect, usando el driver ? (como?)

10/09/2003 - 20:52 por christian | Informe spam
necesito detectar cuando el mouse es desconectado
(desenchufado) o poder desconectarlo logicamente
y volver a conectarlo despues.

imagino q esto involucra el uso del driver del mouse
usando la interfaza de windows para comunicarse con
drivers, pero no se que debo decirle a cual driver ?

habra otra via ?

gracias de todos modos.

Preguntas similare

Leer las respuestas

#1 Miguel
10/09/2003 - 21:36 | Informe spam
"christian" Escribía:

necesito detectar cuando el mouse es desconectado
(desenchufado) o poder desconectarlo logicamente
y volver a conectarlo despues.

imagino q esto involucra el uso del driver del mouse
usando la interfaza de windows para comunicarse con
drivers, pero no se que debo decirle a cual driver ?

habra otra via ?

gracias de todos modos.



Ok, ando un poco corto de imaginación, pero yo recuerdo el proceso de
instalación de un driver en DOS, donde el tipo te pedía que sacudieras
el ratón para detectar su presencia.

Digo, parece ser algo forzosamente interactivo... Se trata de un
dispositivo bastante tonto.

Esto en cuanto a poder detectar si te han [des]enchufado el ratón.

En cuanto a habilitar/inhabilitar el dispositivo, análogamente a lo que
harías con el mixer contra una línea de audio usando el control mute
asociado, no sé... Talvez alguien sepa de un mute para el ratón.

En el tres uno, existía una función EnableHardwareInput() que, aunque
arrastraba al teclado, podía hacer esa desconexión lógica. Creo que se
ha convertido en algo cuasi inútil llamado BlockInput().

Miguel
Respuesta Responder a este mensaje
#2 Gabriel Gibaut
11/09/2003 - 06:40 | Informe spam
No se si servirá de mucho pero bueno...

Detectar si el mouse esta presente lo podés saber con
GetSystemMetrics(SM_MOUSEPRESENT). No se si necesitas saberlo en el momento
de desconexion exacta, si no capaz que preguntandolo a intervalos regulares
te sirve.

La otra es que te fijes a que funcion o ioctl termina llamando
GetSystemMetrics. Supongo que ejecutando la llamada con los simbolos de
depuracion del SO se podrá ver...

En cuanto a conectar-desconectar al mouse una forma de simularlo es poniendo
un hook al mouse con SetWindowsHook y "quedarse" con los mensajes...

No creo que se le permita a un programa de usuario conectar-desconectar al
mouse, y en cuanto a drivers, dentro de lo poco que se, es esto...los
drivers forman una cadena por clase de dispositivo existiendo uno que es el
de clase(es decir el de funcionalidad generica) y los demás que se situan
por debajo o por encima de este en la cadena. Si pudieras hacer un driver
que haga que los otros se descarguen de la cadena (no se si es posible que
lo haga un driver, si lo puede hacer Windows) lo mas probable es que si se
descarguan todos el manager de pnp descubra que el dispositivo esta huerfano
e intente cargarlos de vuelta. La otra por hacer ( la que es segura) es que
tu driver filtre todas las peticiones de I/O, encadenandolo pero sin pasar
las peticiones, pero la verdad es que seria algo similar al hook pero mas
complicado...

Por si necesitas info de drivers, el sitio mas importante es
http://www.osronline.com.
y comp.os.ms-windows.programmer.drivers en news

Saludos

Gabriel



"christian" wrote in message
news:67bb01c377cc$b947a5a0$
necesito detectar cuando el mouse es desconectado
(desenchufado) o poder desconectarlo logicamente
y volver a conectarlo despues.

imagino q esto involucra el uso del driver del mouse
usando la interfaza de windows para comunicarse con
drivers, pero no se que debo decirle a cual driver ?

habra otra via ?

gracias de todos modos.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida