![]() |
AW: Problem mit PATH Variable unter XE5 / XE6
Zitat:
![]() Einfach einen neuen Identifier hinzufügen, z.B. PATH nennen und lesen aus Umgebungsvariable PATH. Alternativ kann man auch aus der Registry mit 64-Bit aktiviert aus folgendem Pfad lesen:
Code:
Bei mir funktionierte es mit der Umgebungsvariablen aber problemlos.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PATH
Zitat:
|
AW: Problem mit PATH Variable unter XE5 / XE6
Liste der Anhänge anzeigen (Anzahl: 1)
So, jetzt vorab mal vielen Dank für Eure hilfreichen Hinweise, damit ist es mir gelungen, eine für mich brauchbare Lösung zu gestalten.
In der Anlage habe ich mal einen Screenshot der Registry-Seite gelegt (am besten den zur Seite legen, wenn Ihr hier weiter lest). Entscheidend ist also, dass man die Einträge in dem Schlüssel
Code:
macht.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PATH
Dort steht bei mir jetzt nur noch %Pathes% drin. Pathes ist ein Schlüssel, den ich selber angelegt habe und der vom Typ "Wert der erweiterbaren Zeichenfolge" ist (also "REG_EXPAND_SZ"). Erweiterbar ist deswegen wichtig, weil ich hier drin quasi "Alias"-Werte ablege, die erst noch erweitert werden müssen, um Sinn zu machen. Im Pathes-Schlüssel steht nun folgendes drin:
Code:
Die einzelnen Variablen habe ich als normale Schlüssel angelegt oder als erweiterbaren Schlüssel, falls er im Wert bereits eine Variable enthält (vgl. anl. Screenshot).
%XE5%;%XE4%;%XE3%;%XE2%;%XE%;%D2007%;%D5%;%D2%;%CollabNet%;%ASys%;%Acronis%;%TMS%
Für %XE5% ist also z.B. folgendes eingetragen:
Code:
Vorteil des ganzen ist, dass man schnell sieht, wenn ein Programm etwas in den Path-Schlüssel hinzufügt. Außerdem ist der Inhalt kurz gehalten. Sinn des ganzen ist es hier zu vermeiden, was mir hier vor 2 Tagen passiert ist: Offensichtlich war der "normale" Path-Eintrag so lang, dass ein Programm, dass den Path erweitern wollte, den ganzen Eintrag verstümmelt hatte. Daher funktioniert danach bei den unterschiedlichen Delphi-Installationen das eine oder andere nicht mehr so richtig.
C:\Program Files (x86)\Embarcadero\RAD Studio\12.0\bin;C:\Users\Public\Documents\RAD Studio\12.0\Bpl;C:\Program Files (x86)\Embarcadero\RAD Studio\12.0\bin64;C:\Users\Public\Documents\RAD Studio\12.0\Bpl\Win64
So bleibt das jetzt übersichtlich und ist im Bedarfsfall schnell zu reparieren. Wenn man jetzt z.B. Delphi startet und unter Tools, Umgebungsvariablen nachsieht, werden alle expandierten Verzeichnisse angezeigt. Was tatsächlich im Path-Eintrag drin steht, kann man in einer DOS-Shell mit "Echo %Path%" kontrollieren. UND noch ein wichtiger Hinweis: Die Einträge in der Registry sind nicht sofort wirksam, sondern z.T. erst nach einmal abmelden und neu anmelden. Wenn jemand eine Möglichkeit kennt, das durch einen Befehl sofort im System zu aktualisieren, wäre ich für einen Hinweis dankbar. |
AW: Problem mit PATH Variable unter XE5 / XE6
Zitat:
![]() |
AW: Problem mit PATH Variable unter XE5 / XE6
Ach ja stimmt, schon fast wieder vergessen!
Es reicht also schon ein Miniprogramm, wo man letztlich nur das verwenden muss:
Delphi-Quellcode:
SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, Integer(PChar('Environment')));
|
AW: Problem mit PATH Variable unter XE5 / XE6
Du mußt nur mal ausprobieren, ob es wirklich Unicode sein kann, oder ob das eventiell als ANSI übergeben werden muß.
Im MSDN steht da nichts explizit dazu und der Schweizer Code ist so alt, daß es damals noch 7 Jahre lang nur ANSI-Delphis gab. |
AW: Problem mit PATH Variable unter XE5 / XE6
Liste der Anhänge anzeigen (Anzahl: 1)
Ich verstehe nicht,warum Ihr das in der Registrierung ändert.Geht das nicht ganz normal in der Systemsteuerung?
|
AW: Problem mit PATH Variable unter XE5 / XE6
Liste der Anhänge anzeigen (Anzahl: 2)
Ja, das hat insofern einen Grund, als dass man in den Dialogen vom Systemeigenschaften-Dialog keine Einträge mit "Reg_Expand_SZ" anlegen kann, sondern nur normale Variablen. Außerdem sind dort die Dialoge und Editfelder noch kleiner als die des Registry-Editors und die Übersicht ist einfach besser in dem großen Fenster des Registry-Editors, als in dem kleinen Minifenstern des Systemeigenschaften-Dialogs (das ist echt unzumutbar, damit zu arbeiten).
Übrigens konnte ich gerade noch mal den Test machen: Hatte meinen PC aus anderen Gründen aus einem Backup wiederhergestellt und danach nach Anlage des "%Pathes" Eintrags wie oben beschrieben, Delphi XE6 installiert. Nun konnte man die neuen Einträge wunderbar im Path-Eintrag sehen und dafür eine neue Systemvariable %XE6% anlegen und somit den Pathes-Eintrag ergänzen. Wirklich nützliche Sache. Edit: Hab mal ein entsprechendes Mini-Programm dazu geschrieben (siehe anliegenden Screenshot) und dort auch eine kurze Info und den Link auf diesen Thread integriert, falls man dazu mal noch was nachlesen möchte. In der ZIP-Datei ist die Kompilierte Exe-Datei (XE6) und das Projekt selber drin. Könnt Ihr natürlich nach Lust und Laune verwenden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 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