Este script, realizado en Visual Basic Script, instala una impresora de red de forma remota.
Consideraciones previas y entorno
- El usuario que ejecuta el script debe ser administrador de la máquina remota.
- Es necesaria una carpeta de acceso público donde se alojarán los controladores de la impresora.
Definición de los elementos
- Impresora de red modelo HP LaserJet 2420
- Dirección IP: 192.168.5.7
- Equipo destino: EquipoRemoto
- Repositorio de drivers: \\Servidor\RepositorioDrivers\HPLaserJet2420\
- Driver (para este caso): UNIDRV.dll
' Almacenar el nombre del equipo en la variable strComputer strComputer = "EquipoRemoto" ' Instanciar y establecer el objeto que permite la impersonación como administrador en la maquina remota. Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") ' Instanciar Puertos. Set objNewPort = objWMIService.Get ("Win32_TCPIPPrinterPort").SpawnInstance_ ' Instanciar Impresoras. Set objPrinter = objWMIService.Get("Win32_Printer").SpawnInstance_ ' Instanciar Driver Impresoras. Set objDriver = objWMIService.Get("Win32_PrinterDriver") ''''''''''''' INSTALAR PUERTO DE IMPRESIÓN '''''''''''''''''''''''''''' ' Establecer nombre de puerto de la impresora. objNewPort.Name = "IP_192.168.5.7" ' Protocolo utilizado. objNewPort.Protocol = 1 ' Direccion IP de la impresora. objNewPort.HostAddress = "192.168.5.7" ' Número de puerto usado por la impresora. objNewPort.PortNumber = "9100" ' Ejecutar la instalación del puerto. objNewPort.Put_ ' Control de errores ' Si se produce algún error en la generación del puerto mostrará ' en pantalla el código del error If Err.Number <> "0" Then Wscript.echo "Número de error: " & Err.Number Err.Clear wscript.sleep 1000 wscript.quit (0) end if ''''''''''''' INSTALAR DRIVER IMPRESORA ''''''''''''''''''''''''''''''' ' Establecer el nombre del nuevo driver. objDriver.Name = "HP LaserJet" objDriver.SupportedPlatform = "Windows NT x86" objDriver.Version = "3" ' Establecer la ruta de repositorio de los controladores objDriver.DriverPath = "\\Servidor\RepositorioDrivers\HPLaserJet2420\UNIDRV.DLL" intResult = objDriver.AddPrinterDriver(objDriver) ''''''''''''' INSTALAR IMPRESORA ''''''''''''''''''''''''''''''''''''' ' Establecer la direccion IP de la impresora / puerto. objPrinter.PortName = "IP_192.168.5.7" ' Establecer el nombre de la impresora. objPrinter.DeviceID = "HP LaserJet 2420" ' Añadir un descriptivo de la ubicación. objPrinter.Location = "Departamento de Administración" ' Identificar la impresora como impresora de red. objPrinter.Network = True ' Añadir un comentario. objprinter.comment = "No imprime a color" ' Definir si se quiere compartir la impresora. 'objPrinter.Shared = True ' Establecer un nombre para la impresora compartida. objPrinter.ShareName = "ImpAdmon" ' Ejecutar la instalación de la impresora. objPrinter.Put_ ' Control de errores If Err.Number <> "0" Then Wscript.echo "Número de error: " & Err.Number Err.Clear wscript.sleep 1000 wscript.quit (0) end if ''''''''''''' ESTABLECER IMPRESORA COMO PREDETERMINADA ''''''''''''''''' ' Establece la impresora añadida como predeterminada. ' Da un error si la impresora es única en el equipo aunque crea la impresora. objPrinter.SetDefaultPrinter()
No hay comentarios:
Publicar un comentario