Die Merkliste stellt Ihnen alle Beiträge bereit, die Sie als hilfreich empfinden und für späteres Nachlesen markiert haben.

Möchten Sie nach bestimmten Beiträgen auf unserer Website suchen, können Sie diese Funktion benutzen.
 
Als IT-Systemhaus in Ingolstadt legt 2-Sigma großen Wert auf die Zusammenarbeit mit namhaften Partnerunternehmen für Software und Cloud-Dienste.

ClickOnce Cache bei Citrix Roaming Profilen nach Neuanmeldung gelöscht

Vorweg möchte ich erwähnen, dass meine Aussagen zu den Systemabhängigkeiten in Teilen auf Beobachtungen beruhen.

Umgebung

Unsere Benutzer bauen über einen Citrix Netscaler eine Verbindung zu einem Terminal-Server auf, um dort zu arbeiten. Da wir den Benutzern mehrere Server zur Anmeldung zur Verfügung stellen, arbeiten wir mit Citrix-Profilen und umgeleiteten Ordnern.

Symptome

Bestimmte AddIns in Office wurden nach jeder Neuanmeldung der Benutzer erneut installiert, sobald die entsprechende Anwendung geöffnet wurde. In unserem Fall waren es konkret die Office-AddIns von RA-Micro, die bei jedem ersten Start von Word und Outlook installiert bzw. geladen wurden. Die daraus resultierende Wartezeit hat bei den Benutzern verständlicherweise zu Verärgerung geführt.

Hintergrund

Benutzer können ohne administrative Berechtigungen sog. ClickOnce-Anwendungen installieren. Diese Anwendungen werden unter %localappdata%\apps\2.0 abgelegt. In unserem Fall sind die o.g. AddIns diesen Typs. Zu den Registrierungswerten der Anwendung selbst werden im Moment der Installation das Cache-Verzeichnis erzeugt und alle Referenzen hinterlegt. Die Werte findet man in der Registrierung unter: HKEY_CURRENT_USER\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Deployment\SideBySide\2.0

Im Schlüssel "StateManager", der sich unterhalb des o.g. Schlüssels befindet, gibt es den REG_SZ-Wert "StateStore_RandomString". Hier habe ich eine direkte Referenz zu den Ordnern im Apps-Verzeichnis gefunden. Siehe:

Registry Anpassungen

Ursache

Beim Abmelden werden die Benutzerprofile vom Server gelöscht und in den Citrix-Profilen gespeichert. Was genau in den Profilen gespeichert wird, wird per Gruppenrichtlinie gesteuert. Die betroffenen Registrierungswerte waren nicht in den Citrix-Profilen gespeichert. Deshalb wurden nach jeder Neuanmeldung die Installationsverzeichnisse bzw. das ClickOnce-Cache-Verzeichnis nicht gefunden und die Anwendungen mussten neu installiert werden, was zu neuen  Verzeichnissen unter %localappdata%\apps\2.0 (wobei die alten noch im Verzeichnis waren) und neuen Registrierungsschlüsseln geführt hat.

Lösung

Das Verzeichnis %localappdata%\apps\2.0 wurde in den Citrix-Profileinstellungen zu den "zu spiegelnden Verzeichnissen" hinzugefügt. Zudem wurde nach der Installation der AddIns der Schlüssel HKEY_CURRENT_USER\Software\Classes\Software\ (man könnte hier noch konkreter nur die relevanten Einstellungen exportieren) exportiert und in einer Netzwerkfreigabe mit dem Namen %Username%.reg abgelegt. Im Nachgang wurde ein Anmeldeskript erstellt, das per Gruppenrichtlinie angesteuert wird. Darin wird geprüft, ob in der Netzwerkfreigabe eine Datei Namens %Username%.reg liegt. Wenn es so ist, wird die Datei mit dem Befehl "reg import \\Pfad_zur_Datei\%Username%.reg" importiert. Andernfalls geschieht nichts.

Mit dieser Lösung konnten wir das unkontrollierte Wachstum des Ordners %localappdata%\apps\2.0 und die erneute Installation der AddIns verhindern. Alternativ kann man versuchen, die relevanten Registrierungswerte mittels Gruppenrichtlinie innerhalb des Citrix-Profils zu speichern.