Sessionname Probleme

22/04/2010 - 08:41 von Volker Hess | Report spam
Hallo NG,

ich hoffe ihr könnt mir bei folgendem Problem helfen. Bislang wird über GPO
das folgende VBscript per User ausgeführt:

On Error Resume Next
Set WshNetwork = CreateObject("WScript.Network")
Set WshShell = WScript.CreateObject("WScript.Shell")
'Umgebungsvariablen abfragen
Set objEnv = WshShell.Environment("Process")
windir = objEnv("WINDIR")
SessionName = objEnv("SESSIONNAME")
'Prüfen ob Console oder Terminal Session
If Left(SessionName, 3) = "ICA" OR Left(SessionName, 3) = "RDP" then
'Da in der Terminal Session keine Laufwerke gemountet werden sollen Script
beenden
WScript.Quit
Else
'Console Session
'XML File lesen
Set Logon = CreateObject("Microsoft.XMLDOM")
Logon.load "shares.xml"
Set shares = Logon.getElementsByTagName("Share")
Set printers = Logon.getElementsByTagName("Printer")
'Shares verbinden
For Each share in shares
WshNetwork.MapNetworkDrive share.getAttribute("device"),
share.getAttribute("Path"),False
Next
'Drucker verbinden
For Each Printer in Printers
rc WshNetwork.AddWindowsPrinterConnection(Printer.getAttribute("Netpath"))

Next
End If

Im Moment laufen bei uns Windows 2003 mit PS 4.0. Wir wollen nun auf XenApp
5.0 und Server 2008 aufrüsten. Ich musste feststellen, dass der Server 2008
TS das Script nicht richtig verarbeitet und die User ihre Laufwerke und
Drucker in der TS-Sitzung gemappt bekommen!

Ist Euch bekannt, ob ein TS unter 2008 und XenApp 5 die Sessionname-Variable
ignoriert? Hab schon alles mögliche versucht komme aber nicht zu den
notwendigen
Erkenntnissen :-(


Schon mal danke im voraus...

Volker Hess
 

Lesen sie die antworten

#1 Pegasus [MVP]
22/04/2010 - 10:27 | Warnen spam
"Volker Hess" wrote in message
news:
Hallo NG,

ich hoffe ihr könnt mir bei folgendem Problem helfen. Bislang wird über
GPO
das folgende VBscript per User ausgeführt:

On Error Resume Next
Set WshNetwork = CreateObject("WScript.Network")
Set WshShell = WScript.CreateObject("WScript.Shell")
'Umgebungsvariablen abfragen
Set objEnv = WshShell.Environment("Process")
windir = objEnv("WINDIR")
SessionName = objEnv("SESSIONNAME")
'Prüfen ob Console oder Terminal Session
If Left(SessionName, 3) = "ICA" OR Left(SessionName, 3) = "RDP" then
'Da in der Terminal Session keine Laufwerke gemountet werden sollen Script
beenden
WScript.Quit
Else
'Console Session
'XML File lesen
Set Logon = CreateObject("Microsoft.XMLDOM")
Logon.load "shares.xml"
Set shares = Logon.getElementsByTagName("Share")
Set printers = Logon.getElementsByTagName("Printer")
'Shares verbinden
For Each share in shares
WshNetwork.MapNetworkDrive share.getAttribute("device"),
share.getAttribute("Path"),False
Next
'Drucker verbinden
For Each Printer in Printers
rc > WshNetwork.AddWindowsPrinterConnection(Printer.getAttribute("Netpath"))

Next
End If

Im Moment laufen bei uns Windows 2003 mit PS 4.0. Wir wollen nun auf
XenApp
5.0 und Server 2008 aufrüsten. Ich musste feststellen, dass der Server
2008
TS das Script nicht richtig verarbeitet und die User ihre Laufwerke und
Drucker in der TS-Sitzung gemappt bekommen!

Ist Euch bekannt, ob ein TS unter 2008 und XenApp 5 die
Sessionname-Variable
ignoriert? Hab schon alles mögliche versucht komme aber nicht zu den
notwendigen
Erkenntnissen :-(


Schon mal danke im voraus...

Volker Hess



Ich habe im Moment keinen Zugang zu einem 2008 Server, aber ich würde mir
einfach mal die Umgebungsvariablen anschauen, die auf einem 2008 Server in
einer RDP-Sitzung existieren. Der Befehl "set" gibt dir sàmtliche Variablen
an. Anschliessend kannst du dein Script entsprechend anpassen. Wenn dies
nichts einbringt, dann würde ich mal in einer Server Newsgruppe anfragen,
denn es ist doch eher eine Serverfrage und nicht ein Scriptproblem.

Ähnliche fragen