
En muchos escenarios nos encontramos necesidades, que se ven cubiertas con los servicios de terminal server.
Suelen dar muy buenos resultados, y la forma de trabajar con ellos, para el usuario final, es cómoda, y no supone excesivas complicaciones.
Donde me he encontrado en multitud de ocasiones problemas, en estos entornos, es en lo referente a las impresiones.
Normalmente el problema de funcionamiento de las aplicaciones con las impresoras que conectamos a los servicios de terminal server, vienen dado por el nombre que cogen las impresoras del tipo:
nombre de impresora en sessión 1
Para solventar este problema, alguna vez he utilizado una serie de scripts los cuales nos permiten modificar los nombres de la impresora.
-Script para poner como nombre de impresora, el nombre del usuario que se loguea
--------------------------------------------------------------
strComputer = "."
Dim Shell
set shell = createobject("wscript.shell")
set env = shell.environment("process")
username = env("username")
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery _
("Select * from Win32_Printer Where default=true")
For Each objPrinter in colInstalledPrinters
objPrinter.RenamePrinter username
Next
------------------------------------------
- Script que nos deja renombrar la impresora con el nombre que queramos
nota: en negrita es donde tenemos que poner el nombre que queremos darla
-------------------------------
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery _
("Select * from Win32_Printer Where default=true")
For Each objPrinter in colInstalledPrinters
objPrinter.RenamePrinter("nombre_impresora")
Next
---------------------------------------
A tener en cuenta...
-Se modificará la impresora que tengamos seleccionada como predeterminada.
-Los privilegios que debe de tener el usuario tienen que ser como mínimo los de "usuario avanzado"
-Los scripts es recomendable lanzarlos en el inicio de la sesión.
-Para generar los ficheros: Copiar los códigos en un txt y renombrarlos con extensión vbs.
-Después simplemente ejecutarlos
Saludos
Comentarios
Gracias.
Saludos
@echo off
@echo Comprobando configuracion de la red...
@echo Este proceso tardara unos pocos segundos.
>nul ping -n 12 localhost
cd\
cd windows
cd system32
@echo Renombrando la impresora de Tickets...
cscript c:\RImpresora1.vbs
@echo Nombre establecido...
@echo Iniciando el TPVGES...
c:
cd\
cd ******
****** 1
En este caso los 2 ficheros el bat y el vbs estan en la RAIZ pero se puede modificar, y ponerlos donde querais siempre que en el bat modifiqueis la ruta del VBS.
Saludos
que puede ser??
saludos
idealmente que aparesca solo la de casa usuario?
El software esta en español y es muy sencillo de utilizar, yo lo tengo instalado en varios clientes y con diferentes sistemas operativos (XP/W2003/W7)
Chas gracias
Lo malo que he notado, es que si te pones a renombrar las impresoras mientras estan cargado, luego cuando el user cierra sesion, estas no desaparecen ser servidor. Windows 2003R2 tira: "The printer Reparto(hp333 on WKJose (from WKPepe) in session 1 could not be deleted."
No he encontrado la forma de saber via script cuando se terminan de cargar, o como solucionar el problema, te a pasado? o solo a mi?
Saludos.
Por favor podéis confirmar si funciona con WINDOWS 2008 TERMINAL SERVER.
En caso afirmativo que cambios se deben de realizar para que el usuario que ejecuta el script tenga permisos para poder cambiar el nombre de la impresora redirigida.
Gracias
Saludos cordiales,
Josep Cifre
A ver si alguien nos puede echar una mano.
Un saludo