Conseguir hacer funcionar cualquier impresora en Terminal Server

Atención: Esta entrada es altamente técnica y si no sabes que siginfica el título, mejor no te la leas o no volverás jamás a entrar en este blog :·)

La gama de sistemas operativos de servidor de Windows ofrece un sistema de teletrabajo llamado «Escritorio remoto», que se compone de un servidor llamado «Terminal Server» y un programa cliente llamado «Conexión a escritorio remoto» que viene de serie con todos los Windows desde Windows 2000.

Este sistema de teletrabajo se basa en que el ordenador «cliente» se conecta al servidor, y abre en él una sesión; las entradas del usuario mediante el teclado y el ratón se envían por Internet (o por red) y el Terminal Server devuelve la imagen de pantalla resultante al cliente.

Esto permite que estés donde estés, y estés en el ordenador que estés, siempre puedas usar los programas que hay instalados en tu Terminal Server.

Una de las características más interesantes de Terminal Server es la posibilidad de imprimir en una impresora conectada al cliente. Pero no es ni de lejos tan fácil como el resto de las características de Terminal Server, ya que para que funcione, tanto el ordenador cliente como el servidor tienen que tener los controladores de esa impresora; sino la impresora simplemente no estará en la lista de impresoras del escritorio remoto.

Quizá sobre el papel no parece tan complicado; simplemente descargas los controladores de la impresora en el servidor y los instalas. ¿Fácil, verdad?. Pues no.

Ya me he encontrado diversas veces con el siguiente problema: no puedo usar una impresora en un cliente de Terminal Server, ya que no puedo instalar los controladores de la impresora en el servidor porque en el CD de instalación están «ocultos» o algo así. Esto es habitual en las impresoras de HP (supongo que otros fabricantes también), que no permiten añadir la impresora si no instalas el gigantesco software que hay detrás, e incluso hay veces que ni haciéndolo.

Un ejemplo práctico es el que me ha ocupado hoy: Tenía que instalar en el Terminal Server (en adelante TS) el driver de una HP OfficeJet 5615, una multifunción con fax de inyección de tinta.

Problema nº 1: La impresora no aparece cuando el cliente de TS se conecta al servidor:
Solución: Activar el modo de retroceso PCL de TS, así:
Ejectuar las directivas de grupo (o políticas de grupo) haciendo Inicio -> ejecutar -> gpedit.mmc
En el árbol de la izquierda, vamos a «Directiva Equipo Local» -> «Configuración del equipo» -> «Plantillas administrativas» -> «Componentes de Windows» -> «Terminal Services» -> «Redirección de datos cliente-servidor». En el panel de la derecha, cambiamos el valor de la configuración «Comportamiento del controlador de impresora de retroceso de Terminal Server» a «Habilitada» y luego poner «Usar PCL si ninguno se encuentra».
Cerramos la sesión de terminal server y la volvemos a abrir; las impresoras ya aparecen; sin embargo las que no tengan los controladores instalados en el servidor, usarán el controlador de la «HP Deskjet 500», un controlador muy básico y que en algún caso (léase en el caso de la OJ 5615) no funciona.

Problema nº 2: La impresora no se puede instalar en el servidor porque el instalador no soporta Windows 2003.
Solución: Truco «guarro» de hacer clic derecho sobre el «setup.exe», propiedades, y activar el modo de compatibilidad para Windows XP.
Aún y así, los controladores no se instalan, ya que la impresora debe estar físicamente conectada para que éstos se instalen.

Problema nº 3: Si la impresora no está físicamente conectada, no se instalan los drivers
Solución: Instalar los drivers de forma manual, usando estos comandos en el servidor:

rundll32 printui.dll,PrintUIEntry /ia /m "HP Officejet 5600 series" /h "Intel" /v "Windows 2000 o XP" /f "D:\hpoprn08.inf"
rundll32 printui.dll,PrintUIEntry /if /b "HP OJ 5600" /f D:\hpoprn08.inf /r "lpt1:" /m "HP Officejet 5600 series"

En mi caso el archivo inf era el hpoprn08.inf, pero puede tener cualquier nombre. Se tiene que hacer una búsqueda textual dentro de los archivos INF que contiene el CD de instalación de la impresora (o los controladores descargados de internet) por el texto exacto del nombre de la impresora cuando ésta se instala con el nombre por defecto. En mi caso era «HP Officejet 5600 series». El texto aparece en varios archivos INF, pero el que me ha funcionado al final es el que hay especificado ahí.

El nombre de «HP OJ 5600» lo he puesto yo (manualmente), y la impresora se conecta por LPT1: pero de momento eso no importa demasiado.

Una vez ejecutados esos dos comandos, tenemos la impresora creada; no sirve porque está conectada al LPT1; pero ahora, al estar instalado el driver ya en el servidor, cuando se inicie sesión el driver adecuado se seleccionará automáticamente.

De no hacerlo, se puede cambiar de forma manual yendo a Inicio -> Impresoras y faxes.
Hacemos clic derecho sobre la impresora en cuestión, y seleccionamos «Propiedades».
Vamos a la pestaña «Opciones avanzadas» y en la lista desplegable «Controlador», seleccionamos el controlador correcto para la impresora.

Espero que esto pueda ayudar a alguien que también se haya peleado mucho para conseguir hacer funcionar sus impresoras en Terminal Server.

Publicada el
Categorizado como General

126 comentarios

  1. Hola Buenas noches. mi problema es que la impresiòn es demasiado lenta, se tarda hasta 15 min por pagina, tengo windows server 2008 standard, el sistema operativo es con windows xp, rdp 6.1 y framework 3.0, si actualizo el framework de plano no imprime. Me podràs apoyar? gracias. Saludos. P.D. la impresora es una HP Laser Jet P1606dn

  2. hola tengo una impresora TSP de etiquetas, esta trabaja bien al equipo sin embargo cuando la conecto mediante IP esta me presenta problemas de configuacion es decir la impresion pierde su configuracion, imprime a la mitad de la colilla y al princio de la otra

  3. Es mucho mas facil instalar los drivers, no hace falta escribir grandes comandos. Printer and faxes, boton derecho, Propiedades del servidor, Controladores, y ahi ponemos agregar. Te pide la ruta donde estan los controladores y listo. Tenes los drivers instalados en el TS.

  4. muy buen tema tambien para ingresar controladores asi no sirvan para w2003 server o w2008 server entra por el administrador de impresoras en herramientas admtivas y en controlador lo agregas con click derecho y lo buscas con el controlador cualquier version.

    Una pregunta tengo el siguiente problema:
    en mi empresa nos conectamos mediante TS a un servidor normal como se hace, pero cada persona pues tiene sus impresoras locales las cuales llegan al servidor, el problema grave es que cuando ellos se conectan y va a imprimir les aparece las impresoras de cada uno de los clientes de TS, como hago para que solo me aparezcan las impresoras de mi equipo y no las demas de los otros usuarios.

    Gracias

  5. A ver quien lo sabe, pero ahora en el windows 2008 no podemos modificar las opciones de imprsora de los clientes vinculados y no sabemos porque ya que con el windows 2003 si podiamos porque?

  6. Una consulta yo tengo 9 usurios y cuando inician una sesión en terminal kes crea un id el tema es que si desconecta o cierro la sesión de un usuario, ya no puede imprimir por que la impresota que se configuró se configuró con el id 2 y el usuario ahora tiene id 5

    como puedo hacer para que eso no pase?

  7. una consulta , Tengo instalado TS (RDS) en windows server 2008 R2 , las impresoras aparecen bien , solo las del usuario local , antes imprimia sin ningún problema , ahora mandas a imprimir y se bloquea la sesion de RDS , sera algún servicio que este deshabilitado en el win 2008?

  8. La impresión desde Terminal Server funciona bien desde Word, Excel y otros, pero en la aplicación de la Empresa, genera el trabajo de Impresión y finalmente no inicia la impresión y se pierde de la Cola

  9. Alguna recomendación estoy utilizando win7 ultimate y tengo 2 clientes TS que accesan con sus impresoras. Pero ellos no pueden imprimir mediante el TS.
    Como podría hacer para que puedan imprimir mediante TS en su impresora local.

  10. TENGO UNA IMPRESORA MATRIZ PUNTO EPSON LAX-300+ CONFIGURADA EN EQUIPO LOCAL -AL IMPRIMIUR TS ME IMPRIME TODO WORD EXCEL OTROS, PERO SIIGO NO ME IMPRIME. TENGO WINDOWS SERVER 2008 R2 STANDAR. (La impresora se redirecciobna sin problemas pero no he logrado hacerla imprimir desde SIIGO). qUIEN ME PUEDE COLABORAR.

  11. Hola Tenemos windows server 2003 , y tenemos que imprimir por terminal service en una PC con win xp.
    El tema es que tengo que imprimir por COM para hacer facturas fiscales. Al hacerlo me tira error en ntvdm.exe (cerrar u omitir)..Entre en el config.nt y el autoexec.nt..de acuerdo a la solucion que propone microsoft pero no lo soluciona..al qe me puede dar una mano..Agradecidicimo!!!
    GRACIAS

  12. Nadie te da las gracias en los comentarios asi que yo te la doy por que me has quitado un buen marrón tipo grande … de en medio…
    MUCHAS GRACIAS¡¡¡

  13. Muy bueno lo de las directivas. Ni se me había ocurrido. Gracias por compartirlo…

    Hay una manera un poco más sencilla de instalar los drivers. En la carpeta de impresoras del server, menú «Archivo -> Propiedades del servidor». Ahí, en la ficha «Controladores», botón «Añadir» y que lo busque él en el CD.
    Si se han descargado de internet en un exe, al ejecutarlo lo normal es que cree una carpeta temporal con los archivos. En el método anterior se le pone que busque en esa carpeta…

Dejar un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.