|
||||
|
Exceed auf Windows Terminal-ServerSofware auf WTSNormalerweise wird Software auf Windows Terminal-Server (kurz WTS) im sog. Install-Modus installiert. Dieser Modus sorgt dafür, dass anschließend aus Sicht der Software jede Session eine von anderen Usern abgeschirmte Umgebung sieht, dh. dass auch Registry-Einträge in HKEY_LOCAL_MACHINE und globale .ini-Dateien letztlich pro User ausgelegt werden und im laufenden Betrieb an die jeweilige gloabale Stelle (in der Registry oder im Dateisystem) eingeblendet werden. Somit können viele Sessions parallel betrieben werden, ohne dass sich diese gegenseitig beeihflussen.Sonderfall ExceedEben dieses Verfahren ist aber für einen X-Server fatal. Man stelle sich vor: beim ersten Start des X-Servers auf WTS etabliert dieser ein X-Display mit der Display-ID ip-adresse:0.0 und
gibt diese
an diverse X-Clients weiter. In der nächsten User-Session würde -
abgeschirmt von der ersten Session - wieder versucht werden, ein
X-Display mit der ID ip-adresse:0.0 zu
starten.
Die
IP-Adresse wäre die gleiche, nämlich die des Terminal-Servers. Damit
sind die beiden X-Displays aus der Sicht der X-Clients nicht
unterscheidbar. Außerdem käme es zu einem Konflikt um dern Port 6000,
auf den beide X-Server-Instanzen versuchten, einen Listener zu
platzieren. Auf Windows 2003 ist ein nicht-priveligierter Anwender
zudem gar nicht berechtigt, Listener auf irgedwelche Ports zu setzen. Kurz
gesagt, das normale
Installationsverfahren auf WTS stößt mit einem X-Server auf große
Schwierigkeiten.Exceed muss deshalb unbedingt im sog. Run- oder Execute-Modus auf WTS installiert werden. Dann sorgt ein spezieller Dienst für die Verteilung unterschiedlicher Display-Nummern für jede Session sowie für die Etablierung der entsprechenden Listener auf die Ports 6000+n (n entspricht der Display-Nr.). Man kann mit change user /query change user /execute Installiert man Exceed zusätzlich nach Anwendung einer speziellen TRANSFORM-Datei (ExceedTSE.mst) so stehen darüber hinaus eine Reihe von WTS-spezifischen Features zur Verfüung, die über einen sog. User Manager verwaltet werden. Auch Service Packs werden nach der Produkt-Installation oder auch zu einem späteren Zeitpunkt im Execute-Modus mit lokalen Admin-Rechten installiert. Detaillierte Erläuterungen dazu können einem Whitepaper von Open Text Connectivity Solutions Group entnommen werden. Hier stehen PDF-Dateinen für einige Exceed-Versionen zum Sichten und Download bereit: Tipps und Tricks: Dreh- und Angelpunkt für das Funktionieren von Exceed ist die Per-User-Installation, die normalerweise bereits beim Login jedes Users abläuft. Verantworktlich ist das Programm \Windows\System32\Hummingbird\Connectivity\usrsetup.exe. Das usrsetup.exe prüft zunächst, ob der Anwender überhaupt für die Exceed-Nutzung vorgesehen ist (dh. Mitglied der Gruppe Exceed12_User ist, falls eine solche Gruppe existiert). Wenn ja, wird geprüft, ob die Exceed User Files und die Exceed-Einträge in HKEY_CURRENT_USER vorhanden und aktuell sind; wenn nicht, so wird eine Per-User-Installation oder -Aktualisierung vorgenommen. Ist der User nicht (mehr) für die Exceed-Nutzung vorgesehen (dh. die Gruppe Exceed12_Users exisitert, aber der User ist nicht Mitglied) , so werden evtl. vorhandene User Files und Registry-Keys entfernt. Über diese Aktivitäten legt usrsetup.exe jedesmal eine oder mehrere Log-Datein (setup.log, usrsetup.log, hum*.log) im TEMP-Verzeichnis des Users an (also in seinem Profil unter \Lokale Einstellungen\Temp\). Für den automatischen Aufruf ist ein Eintrag in der Registry verantwortlich, nämlich in HKLM\software\microsoft\windowsnt\currentversion\winlogon
der Eintrag hummingbird\connectivity\usrsetup.exe . Unter Umständen findet dieser automatische Aufruf zu früh statt, z.B. wenn eine Aktualisierung oder Umleitung des User-Profils noch nicht stattgefunden hat. Dann entfernt man hummingbird\connectivity\usrsetup.exe aus dem oben genannten Registry-Eintrag und führt usrsetup.exe in Eigenregie zu einem geeigneten Zeitpunkt aus. Dies gilt insbesondere für "Published Applications" der Windows Terminal-Servers. Hier empfieht sich, vor dem Aufruf der veröffentlichten Exceed-Komponente (z.B. xstart.exe oder xsession.exe) explizit usersetup.exe aufzurufen, also letztlich eine kleines Skript zu veröffentlichen, dass die beiden Programme hintereinander aufruft. Warnung: Für den erfolgreichen Ablauf des usrsetup.exe ist bei älteren Versionen erforderlich, dass die verwendete Installationsquelle von Exceed (also das MSI-Paket mit dem ExceedTSE-Transform) weiter für den Lesezugriff verfügbar ist. Für die aktuelle Version 14 ist dies nicht mehr erforderlich. Allerdings muss die Installationsquelle evtl. beim späteren Einspielen von Paches bzw. "ServicePacks" wieder verfügbar sein. |
|