Si alguna vez has necesitado gestionar impresoras sin tocar la interfaz gráfica (por ejemplo, implementar impresoras en una red mediante scripts o automatizar la instalación de controladores), conocer estos trucos de línea de comandos podría salvarte la vida. Gestionar impresoras con scripts puede ser un poco complicado al principio, sobre todo porque Windows cuenta con varios scripts y herramientas integrados que hacen el trabajo pesado. Pero, sinceramente, una vez que le coges el truco, resulta bastante satisfactorio hacer las cosas más rápido que haciendo clic en los menús de Configuración o Dispositivos. Además, es ideal para crear scripts en SCCM, scripts de inicio de sesión o incluso tareas de servidor remoto. En resumen: Windows proporciona una colección de scripts VBS en `C:\Windows\System32\Printing_Admin_Scripts\en-US` (o en una carpeta localizada, según el idioma).Estos scripts te permiten instalar controladores, añadir o quitar impresoras, crear puertos, gestionar colas e incluso compartir impresoras sin necesidad de abrir la interfaz gráfica. Es una joya escondida, pero si sabes qué comandos ejecutar, simplifica mucho la implementación masiva de impresoras y la resolución de problemas; a veces, incluso más rápido que esperar a que Windows se actualice. Solo una nota: en sistemas antiguos como XP o Windows Server 2003, los scripts se encuentran en `C:\WINDOWS\system32`, y los comandos son bastante similares. Porque, claro, Windows tiene que complicarlo más de lo necesario.
Cómo solucionar la administración de impresoras mediante la línea de comandos en Windows
Cómo instalar un controlador de impresora desde la línea de comandos
A veces, es necesario instalar un nuevo controlador, especialmente al configurar nuevas impresoras o actualizar controladores en masa. Esto es bastante común en entornos empresariales donde la instalación manual mediante la interfaz gráfica no es práctica. El comando usa `prndrvr.vbs` con la opción `-a`, que le indica que agregue un controlador. Por ejemplo:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prndrvr.vbs" -a -m "HP Universal Printing PCL 6" -i "C:\drv\HP Universal Print Driver\hpcu160u.inf"
Desglosando el comando: -a sirve para agregar, -m especifica el nombre del controlador (debe coincidir con el controlador deseado, como el controlador de impresión universal) y -i apunta al archivo INF exacto que contiene la información del controlador. Esto tiene sentido: le estás indicando a Windows exactamente dónde encontrar el controlador y qué hacer con él. En algunas configuraciones, si el controlador es incompatible o está dañado, podría no instalarse, pero a veces basta con ejecutarlo de nuevo después de reiniciar o actualizar la ruta INF. Normalmente, después de esto, verás el controlador en Propiedades del servidor de impresión (ve a Panel de control > Dispositivos e impresoras > Propiedades del servidor de impresión).
Agregar una nueva impresora desde el símbolo del sistema
Una vez instalado el controlador, agregar la impresora es bastante sencillo. El comando usa `prnmngr.vbs` con `-a` de nuevo, pero esta vez para crear la impresora. Ejemplo:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -a -p "HP5525" -m "HP Universal Printing PCL 6" -r "LPT1:"
Esto instala una nueva impresora local llamada «HP5525» con ese controlador y la vincula a un puerto, como LPT1. Puedes cambiarlo por puertos USB (USB001) o puertos serie (COM1:).Recuerda que los nombres de los puertos deben coincidir con los de tu equipo; si especificas un puerto no disponible, el script fallará o no hará nada. Es recomendable verificar los puertos en Dispositivos e impresoras antes de ejecutar estos comandos.
Configuración de la impresora predeterminada desde la línea de comandos
A veces, los problemas surgen cuando Windows olvida qué impresora quieres usar. Puedes listar todas las impresoras con:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -l
Y para ver cuál es tu valor predeterminado actual:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -g
Para cambiar el valor predeterminado, ejecute:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -t -p "HP5525"
Esto cambia tu impresora predeterminada sin tener que acceder a la configuración. En algunas configuraciones, Windows no siempre cambia al instante, por lo que podría ser necesario reiniciar o cerrar sesión para que el cambio surta efecto. Créeme, yo y algunos administradores de sistemas hemos tenido que hacerlo más de una vez.
Crear un puerto TCP/IP para una impresora de red
Conectarse a una impresora de red implica dos pasos: crear un puerto y luego agregar la impresora. Primero, debe configurar un puerto TCP/IP; por ejemplo, la IP de la impresora es 192.168.1.22. El comando es similar a esto:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\Prnport.vbs" -a -r IP_192.168.1.22 -h 192.168.1.22 -o raw -n 9100
Aquí, -r es el nombre del puerto, que puede etiquetar como desee, -h es la dirección IP, -o raw establece el protocolo (socket sin formato) y -n 9100 suele ser el puerto estándar. Una vez creado el puerto, puede agregar la impresora con:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -a -p "HP5525" -m "HP Universal Printing PCL 6" -r "IP_192.168.1.22"
Esto agregará automáticamente la impresora de red que apunta a esa IP y la pondrá a disposición del sistema. A veces, si la configuración de IP o puerto es incorrecta, el script se bloquea o genera errores, así que verifique la IP y el número de puerto.
Imprimir una página de prueba desde la línea de comandos
¿Quieres comprobar que todo funciona correctamente? El siguiente script activa una prueba de impresión en la impresora especificada:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnqctl.vbs” -e -p "HP5525"
Es un poco raro, pero funciona casi siempre. No es necesario acceder a las propiedades de la impresora; simplemente imprime una página de diagnóstico para confirmar que la configuración es correcta. En algunas configuraciones, especialmente con impresoras de red o personalizadas, puede que no funcione de inmediato, pero bueno, es un comienzo.
Administrar colas de impresión: ver, borrar y cancelar trabajos
Si tiene trabajos de impresión atascados o simplemente desea echar un vistazo rápido, los scripts ofrecen comandos para ver y borrar las colas. Para listar todos los trabajos de impresión en todas las impresoras locales:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -l
Para ver trabajos en una impresora específica:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -l -p "HP5525"
¿Y para vaciar una cola de impresión? Este comando lo hará, pero tenga cuidado: borra todos los trabajos de la cola:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -x -p "HP5525"
Para un enfoque de fuerza bruta para borrar todas las colas en todas las impresoras:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnjobs.vbs" -x
Nota: A veces, estos scripts pueden no funcionar si la impresora tiene trabajos pendientes durante demasiado tiempo o si los permisos son defectuosos, pero, en general, funcionan.
Compartir una impresora a través de la red mediante la línea de comandos
También se puede compartir impresoras desde la línea de comandos. Para compartir una impresora existente con un nombre atractivo, ejecute:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs" -t -p "HP5525" -h "HP5525_Shared" +shared
Y para desactivar compartir:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs" -t -p "HP5525" -shared
Si desea publicar la impresora en Active Directory, agregue el indicador +publicado:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prncnfg.vbs" -t -p "HP5525" +published
Básicamente, puedes crear scripts para compartir y publicar y automatizar implementaciones en toda la red.
Agregar una impresora de red desde la línea de comandos
Para conectarse a una impresora compartida en otra máquina, como \\rome-prnt01\hp2100, ejecute:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -ac -p "\\rome-prnt01\hp2100"
Tenga cuidado con los errores comunes (0x00000002, 0x00000057, 0x0000007e), que aparecen si el nombre del recurso compartido es incorrecto o hay problemas de red. Normalmente, revisar la ruta y los permisos del recurso compartido ayuda a solucionarlo.
Eliminar impresora y controlador desde la línea de comandos
Si una impresora se ha vuelto inestable o simplemente desea ponerla en orden, puede enumerar primero todas las impresoras instaladas:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -l
Y eliminar una impresora específica con:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -d -p "HP5525"
Para deshacerse del controlador, ejecute:
cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prndrvr.vbs" -d -m "HP Universal Printing PCL 6" -e "Windows x64" -v 3
Esto es útil si estás cambiando controladores o limpiando los antiguos. En algunos equipos, la eliminación de controladores puede dejar archivos residuales, pero en la mayoría de los casos, funciona correctamente.
Resumen
En resumen: estos scripts no son las herramientas más atractivas, pero pueden ser un salvavidas al automatizar la configuración de impresoras, la resolución de problemas o la implementación masiva, especialmente cuando la interfaz gráfica de usuario no es una opción. La clave está en recordar que estos scripts son sensibles a la sintaxis y los parámetros, por lo que un poco de prueba y error a veces ayuda. Aun así, una vez que funcionan, es bastante satisfactorio administrar un conjunto de impresoras con comandos sencillos en lugar de tener que navegar por los menús.
Resumen
- Utilice `
prndrvr.vbs` para instalar los controladores - Agregar impresoras con `
prnmngr.vbs` - Cree puertos TCP/IP usando `
Prnport.vbs` - Gestione colas y trabajos con `
prnjobs.vbs` - Comparta y conecte impresoras de red a través de `
prncnfg.vbs` y `prnmngr.vbs - Eliminar impresoras y controladores cuando sea necesario
Reflexiones finales
La mayoría de estos comandos son bastante anticuados, pero funcionan, y en algunos entornos son las únicas opciones. Diviértete experimentando y no tengas miedo de ajustar y combinar comandos para tu configuración específica. Cruzo los dedos para que esto te ayude a reducir las molestias; a mí me funcionó, así que espero que también le ahorre tiempo a alguien.