2009-09-08 7 views
10

Mi aplicación necesita comportarse como un joystick virtual (imagina arrastrando un cuadrado con el mouse y traduciéndolo a la salida de un joystick analógico) y envía algunas teclas a otro equipo donde el conductor recibiría esa entrada.Escribiendo un controlador de Windows para un dispositivo de entrada emulado

Solo necesito compatibilidad con XP, Vista y Win7.

Tal vez se puede hacer sin escribir un controlador. Intenté enviar golpes de teclado con SendKey(), que parecía funcionar pero no sabía cómo emular un joystick analógico.

He descargado el VDK y he estado leyendo todo lo que puedo encontrar sobre el tema, pero hay muchas cosas que todavía no entiendo. ¿Puedes señalarme en la dirección correcta?

  1. ¿Debo construir un controlador kernel-mode o user-mode?
  2. ¿Puede mi controlador actuar como servidor de una aplicación en la red?
  3. ¿Conoces buenos tutoriales/libros/muestras que pueden ayudarme con esto.

Gracias

Respuesta

-1

Si es sólo por la red, probablemente, la programación del zócalo debe ser lo suficientemente sencilla.

5

En primer lugar, tendrá que tener algún tipo de interfaz entre su computadora (o la red) y el dispositivo de joystick que se está controlando.

Si se trata de fabricar hardware personalizado para controlar el joystick analógico (como controles neumáticos o hidráulicos o algo así, no solo un joystick de PC), entonces sí, seguramente necesitará un controlador para permitir una aplicación de red para moverse (el brazo del robot, o lo que sea) moverá ese joystick.

Si puede eliminar el joystick físico de la ecuación, ¿puede escribir un software que emule la entrada de donde se enchufó el joystick (un joystick/puerto serie?), O emularlo por completo (un valor razonable el conductor simple podría hacer esto). Podría hacerlo completamente sin escribir un controlador si el joystick usa una interfaz de comunicación estándar (como RS232) porque existen bibliotecas que manejarán todo eso y usted puede configurar puertos COM virtuales que serán indistinguibles de cualquier cosa con la que intente comunicarse.

El mejor libro se puede comprar en el desarrollo de controladores en este momento es Developing Drivers with the Windows Driver Foundation

Rootkits: Subverting the Windows Kernel es otro gran libro, pero no cubre una gran parte del material WDF más reciente. Tiene más un enfoque de seguridad, pero tiene algunos capítulos impresionantes sobre los controladores de dispositivos con ejemplos completamente combinados, descomponiéndolos de una manera realmente accesible.

Cuestiones relacionadas