Archivo

Archivo para sábado, 24 de mayo de 2008

Cambiar el nombre de una conexión ICA

sábado, 24 de mayo de 2008 Sin comentarios

Cambiar el nombre a una conexión ICA

Uno de los fallos más importantes de Presentation Server y XenApp, es el nombre de la conexión virtual que se establece con el servidor de Presentation Server o XenApp, el problema reside en que por norma general la conexión realizada mediante WebInterface durante el proceso de Download del cliente ICAWeb, o durante el proceso de instalación del mismo mediante ejecutable, el usuario establece por defecto el uso del nombre del PC Local.

El aplicar este tipo de configuración es muy viable y factible cuando la nomenclarura de nombres está totalmente estandarizada y no se realizan conexiones WAN o desde Internet, con equipos de carácter personal no clasificados. En el caso de que exista la posibilidad de utilizar equipos no controlados, podemos encontrarnos con nombres duplicados en nuestras conexiones, además de que podemos encontrarnos con problemas debido a duplicación de nombres y generación de impresión por impresoras que no son las correctas.

La mayor parte de los problemas residen principalmente en que al ya existir un canal virtual con un nombre de equipo, al realizar la segunda conexión, este utiliza en la mayor parte de los casos los recursos ya existentes, realizando tareas de impresión en otros lugares siendo estos muchas veces los menos adecuados.

Para solucionar este problema es necesario modificar o generar una nueva clave del registro del PC desde donde es solicitada la sesión ICA, realizando un cambio de nombre del dispositivo remoto.

En este caso publicamos un Script realizado en VBScript, que soluciona esta problemática, el cual únicamente es necesario aplicarlo en el proceso de logon del usuario remoto.

const HKEY_LOCAL_MACHINE = &H80000002
strComputer = «.»
Set StdOut = WScript.StdOut
Set oReg=GetObject(«winmgmts:{impersonationLevel=impersonate}!\» &strComputer & «rootdefault:StdRegProv»)
strKeyPath = «SOFTWARECitrixICA Client»
strValueName = «ClientName»
oReg.GetExpandedStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
dim objICA
set objICA = CreateObject(«Citrix.ICAClient»)
Randomize Timer
Dim tmpCounter,tmpGUID
Const strValid = «0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ»
For tmpCounter = 1 To 5
tmpGUID = tmpGUID & Mid(strValid, Int(Rnd(1) * Len(strValid)) + 1, 1)
Next
CreateGUID = tmpGUID
nombre = «ICA»+CreateGUID
strValueName = «ClientName»
oReg.SetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,nombre

Categories: General Tags: