Tecnología

Inicio

Cómo depurar un controlador de dispositivo

Tal vez el dispositivo no está funcionando correctamente, y se sospecha que es por el controlador de dispositivo en lugar del propio dispositivo. Tratar de depurar el controlador de dispositivo antes de arrancar el pelo. Esto puede ayudar a eHow.

Instrucciones

1 Abra el controlador para el dispositivo y establecer un "punto de ruptura" en el "DLLENTRY" o punto de entrada "DllMain" del controlador. Con el fin de hacer esto, es posible que tenga que reiniciar el dispositivo al que está apuntando, y volver a cargar el controlador para asegurarse de que se ejecuta el punto de interrupción.

2 Ejecutar el depurador para ver si el controlador se carga como debería. Ha de llegar al punto de interrupción creado en el paso 1. Si funciona, vaya al siguiente paso. Si esto no sucede, el conductor no se cargó como debería. Ir a la resolución de problemas para el conductor cuando esto sucede, como se intenta depurar un controlador de dispositivo.

3 Establecer otro punto de ruptura, pero esta vez en el "xxx_init (Administrador de dispositivos)" punto de entrada para el conductor. Pasar por el proceso de inicialización del controlador a medida que tratan de depurar el controlador de dispositivo. Ejecutar el depurador de nuevo, tratando de confirmar que el controlador es reconocido por el administrador de dispositivos, y está funcionando correctamente.

4 Añadir más puntos de interrupción a medida que intenta depurar un controlador de dispositivo. Añadir puntos de interrupción en el punto de entrada de varias funciones de interfaz tales como "XXX_Close (Administrador de dispositivos)", XXX_IOControl (Administrador de dispositivos), XXX_Read (Administrador de dispositivos), y más.

5 Pruebe la aplicación de interfaz de flujo mediante la sustitución de "XXX" con algo que coincide con la aplicación específica, como DEVFLAGS_NAKEDENTRIES.
Prueba lo que ha hecho ejecutando el depurador de nuevo.

6 Prueba lo que ha hecho ejecutando el depurador de nuevo.

7 Compruebe que el "hilo de servicio de interrupción" funciona mediante el establecimiento de puntos de interrupción en el IST del conductor. Ejecutar el depurador de nuevo para ver que el conductor está funcionando adecuadamente a medida que intenta depurar un controlador de dispositivo. Si esto funciona correctamente, entonces usted ha depurado satisfactoriamente el administrador de dispositivos.