:: Identificarse o Registrarse :: :: Numero de miembros: 245.716 :: Registrados ayer: 531 :: On-line: 247 ::
![]() Como puedo cambiar el puerto de impresion de una impresora A continuación le mostramos una secuencia de comandos que le permitirá llevar a cabo esta tarea únicamente en equipos con Windows XP y Windows Server 2003: strComputer = "." Set objWMIService = GetObject("winmgmts:\" & strComputer & "\root\cimv2") Set colPrinters = objWMIService.ExecQuery _ ("Select * From Win32_Printer Where DeviceID="Art Department Printer"") For Each objPrinter in colPrinters objPrinter.PortName = "LPT1:" objPrinter.Put_ Next Como puede ver, nos conectamos al servicio WMI y utilizamos el método ExecQuery para obtener una colección de todas las impresoras que tienen la propiedad DeviceID igual a Art Department Printer. Si prueba esta secuencia de comandos, asegúrese de utilizar una cláusula Where que limite a una sola impresora la colección que se obtiene; de lo contrario, corre el riesgo de cambiar el puerto de impresión de todas las impresoras del equipo. (Sí, DeviceID es una buena manera de proceder, ya que cada DeviceID es única en el equipo). Tras obtener la colección, establecemos un bucle For Each para recorrer todas las impresoras que están en la colección. (Si realizamos nuestra consulta correctamente, sólo habrá un elemento en la colección). Dentro del bucle For Each, cambiamos el valor de la propiedad PortName y, a continuación, utilizamos el método Put_ para escribir esos cambios en el objeto de la impresora. |