Título: VBScript para instalar impresora con IP Publicado por: msanarev en 30 Enero 2019, 11:49 am Buenos días,
Necesitaría saber si hay alguna forma de poder instalar impresoras con IP remotamente sin necesidad de tener el driver instalado en los equipos. Es decir, que el mismo script señalando la ruta del driver instale la impresora. Hasta ahora, tengo el script que me instala todas las impresoras pero tengo que tener instalado el driver o una de ellas: ' Indicación de la IP strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set objNewPort = objWMIService.Get _ ("Win32_TCPIPPrinterPort").SpawnInstance_ objNewPort.Name = "X" objNewPort.Protocol = 1 objNewPort.HostAddress = "XXX.XXX.XXX.XXXX" objNewPort.PortNumber = "9100" objNewPort.SNMPEnabled = False objNewPort.Put_ 'Indicación del nombre exacto del driver Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") objWMIService.Security_.Privileges.AddAsString "SeLoadDriverPrivilege", True Set objDriver = objWMIService.Get("Win32_PrinterDriver") objDriver.Name = "Nombre exacto del driver objDriver.SupportedPlatform = "Windows 10" objDriver.Version = "3.0" objDriver.DriverPath = "\\XXX\publico\temporal\Drivers Impresoras\Kyocera FS 2100d\FS-2100D Windows 10 64 bits\KyoceraClassicUniversalDriver_v3.0_Signed\KyoceraClassicUniversalPCL6_v3.0" objDriver.Infname = "\\XXX\publico\temporal\Drivers Impresoras\Kyocera FS 2100d\FS-2100D Windows 10 64 bits\KyoceraClassicUniversalDriver_v3.0_Signed\KyoceraClassicUniversalPCL6_v3.0\OEMsetup.inf" intResult = objDriver.AddPrinterDriver(objDriver) 'Instalación impresora Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set objPrinter = objWMIService.Get("Win32_Printer").SpawnInstance_ objPrinter.DriverName = "Nombre exacto del driver" objPrinter.PortName = "XXX.XXX.XXX.XXX" objPrinter.DeviceID = "X" objPrinter.Location = "XX" objPrinter.Network = True objPrinter.Put_ ¿Saben de alguna forma que sea más directa? Gracias. |