![]() |
TSAWARE Flag (Terminal Server) - Verwendung von INI Files und Registry
Die
![]() Zitat:
Hintergrund: zum Beispiel ![]() Zitat:
|
AW: TSAWARE Flag (Terminal Server) - Verwendung von INI Files und Registry
Hallo Michael,
ich würde das so interpretieren, dass du bei der Installation deines Programms nicht nach HKCU schreiben darfst, weil das Programm ja auf einem Terminal Server typischerweise von mehreren verschiedenen Benutzern ausgeführt wird, die nicht auf den HKCU-Zweig des installierenden (Admins) kommen, sondern auf ihren eigenen und dementsprechend auch nicht an die während dem Setup geschriebenen Informationen. Einstellungen die jeder einzelne Benutzer während dem normalen Programmablauf selber trifft darfst du - meiner Auffassung nach - dann schon nach HKCU schreiben. Außerdem schreibt TRegistry da hin, wo du es angibst dass es lesen/schreiben soll (der Standard ist halt HKCU) und muss je nach Zweck angepasst werden. Gruß Chris |
AW: TSAWARE Flag (Terminal Server) - Verwendung von INI Files und Registry
Die Frage ist welche Umgebung ein auf einem Terminalserver laufendes Programm erkennt.
Da wäre das Schreiben der INI-Infos in die HKEY_Local_Machine u.u am sinnvolsten. Anpassungen könnten dann über den etsprechenden HKEY_Current_User vorgenommen werden. Gruß K-H |
AW: TSAWARE Flag (Terminal Server) - Verwendung von INI Files und Registry
Der Terminalserver kennt ja einen Installationsmodus, der dann aktiviert wird, wenn Software installiert wird.
Während des Installationsmodus werden Änderungen in der Registry und im Dateisystem aufgezeichnet, um den Usern später die gleiche Umgebung zu liefern. Bei einer TSAWARE Anwendung kann Windows auf die Aufzeichnung verzichten, was die Installation beschleunigt und Datenmüll in der Registry vermeidet. |
AW: TSAWARE Flag (Terminal Server) - Verwendung von INI Files und Registry
Zitat:
schreibt man in eine INI Datei test.ini, so liegt diese * bei Start als Administrator im Windows Verzeichnis * ohne Administratorrechte im C:\Users\<name>\AppData\Local\VirtualStore\Windows Verzeichnis Wenn man also eine Installation als Admin startet, liegt die INI Datei bei der späteren Verwendung durch nicht-Admin Benutzer im falschen Verzeichnis Sicher ist es "besser" direkt ein Profilunterverzeichnis zu verwenden, nur bei einer bestehenden Anwendung mit vielen Benutzern wollte ich sicherstellen dass das TSAWARE Flag keine Seiteneffekte auf bestehende INI Dateien hat. Es gibt glücklicherweise keinen Unterschied, ob die Anwendung die auf test.ini zugreift mit oder ohne TSAWARE Flag erzeugt wird. Code zum Ausprobieren:
Delphi-Quellcode:
program Project3;
{$APPTYPE CONSOLE} uses IniFiles, Windows; {$SetPEOptFlags IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE} begin with TIniFile.Create('test.ini') do try WriteString('a', 'b', 'c'); finally Free; end; end. |
AW: TSAWARE Flag (Terminal Server) - Verwendung von INI Files und Registry
Interessanter Microsoft Link zum Thema:
![]() Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz