Conversión de monitores de impresión para su uso con servidores de impresión en clúster
La agrupación en clústeres de servidores de impresión es una nueva característica de Windows 2000. Cualquier monitor de puerto de impresora que esté pensado para ejecutarse en clústeres de Windows 2000 (o posterior) debe modificarse para que se pueda llamar desde varias instancias del administrador de colas (el administrador de colas del nodo y un administrador de colas de clústeres). Se deben realizar los pasos siguientes:
La función InitializePrintMonitor del monitor debe reemplazarse por una función InitializePrintMonitor2 . Esta última función devuelve un identificador de instancia de supervisión.
Las variables almacenadas globalmente se deben mover a la memoria asignada localmente y esta memoria debe estar asociada al identificador de monitor devuelto por InitializePrintMonitor2.
Las llamadas a la API del registro Win32 deben reemplazarse por llamadas a las funciones del registro del administrador de trabajos de cola, direcciones de las que se pasan al monitor en una estructura MONITORREG . Para obtener más información, consulte Almacenamiento de información de configuración de puerto.
Los monitores de puerto deben dividirse en un archivo DLL de interfaz de usuario del monitor de puerto y un archivo DLL del servidor de supervisión de puertos. El archivo DLL de la interfaz de usuario debe comunicarse con el archivo DLL del servidor mediante una llamada a la función XcvData del administrador de colas.
Se debe agregar una función Shutdown .
Los monitores de impresión que no se convierten solo se pueden usar en un entorno no agrupado. No se pueden usar con servidores en clúster.
Una vez que un monitor de puerto de impresora que se ejecuta en un nodo en clúster de una máquina que ejecuta Windows 2000 o posterior ha realizado una conexión (ya sea a través de la red o localmente), el monitor de puerto debe devolver de las llamadas realizadas por el administrador de colas en un período de tiempo razonable. El valor predeterminado del tiempo de espera del recurso de cola es de 180 segundos. Para obtener más información, vea Establecer valores de puerto Time-Out .
Cuando se produce una conmutación por error de un nodo de clúster a otro, el administrador de trabajos de cola debe esperar a que se completen o produzcan errores en todos los trabajos de impresión actuales. Si un trabajo de impresión pendiente se mantiene en un monitor de puerto durante más tiempo que el tiempo de espera del recurso de cola, el administrador de colas puede volver a estar en línea en un estado incompleto, con impresoras que faltan temporalmente. Esto puede afectar a los usuarios que tienen conexiones a esas impresoras que faltan.