Creación e inicio de un puerto paralelo
El administrador de Plug and Play usa la compatibilidad Plug and Play del controlador de funciones proporcionado por el sistema para puertos paralelos para crear e iniciar un objeto de dispositivo de función (FDO) que representa un puerto paralelo.
El controlador de función de puerto paralelo hace lo siguiente:
Crea un FDO con nombre
El formato del nombre del dispositivo para el puerto paralelo es "\Device\ParallelPortx", donde x es un valor entero para el número de puerto. El controlador de función de puerto paralelo usa el valor de entrada PortName (REG_SZ) en la clave del Registro Plug and Play para el puerto paralelo para determinar el número de puerto. Tenga en cuenta que si PortName tiene el formato "LPTn", donde n es el número del puerto, x en "ParallePortx" se establece en el valor de (n -1). Por ejemplo, "ParallelPort0" está asociado a "LPT1". Si PortName no tiene el formato correcto, no se crea un objeto de dispositivo.
Tenga en cuenta que no se garantiza un nombre de dispositivo "ParallelPortx". Microsoft recomienda usar IoRegisterPlugPlayNotification para recibir una notificación de la llegada de una interfaz de dispositivo GUID_PARALLEL_DEVICE.
Registra y habilita una interfaz de GUID_PARALLEL_DEVICE para el puerto paralelo
Valida los recursos enviados por el administrador de Plug and Play
Inicializa 1284.3 dispositivos conectados al puerto paralelo.
El controlador de función de puerto paralelo cuenta el número de dispositivos de cadena de margarita y asigna un identificador de cadena de margarita a cada dispositivo. En Microsoft Windows 2000, el controlador asigna identificadores de 0 a 3. En Windows XP, el controlador asigna un identificador de 0 o 1. Los identificadores de dispositivo se asignan a los dispositivos en orden ascendente, empezando por el dispositivo que está físicamente más cercano al puerto paralelo.
Registra el FDO y los bloques de datos de WMI asociados y devoluciones de llamada con el proveedor WDM.
El controlador de función de puerto paralelo registra el número de veces que se asigna y libera un puerto paralelo.
Determina los modos de comunicación admitidos por el hardware de puerto paralelo.
El hardware debe ser al menos compatible con IEEE 1284. El controlador de función de puerto paralelo comprueba si el hardware admite modos BYTE, EPP y ECP. Tenga en cuenta que EPP solo se admite en un pequeño subconjunto de máquinas.
Crea una cola de trabajo (FIFO) para el puerto paralelo.
Cada puerto paralelo tiene su propia cola de trabajo. Las colas del controlador de función de puerto paralelo solo asignan y seleccionan solicitudes de dispositivo. Si el puerto ya está asignado cuando el controlador de función de puerto paralelo recibe una nueva solicitud de asignación o una solicitud de selección, pone en cola la solicitud.