![]() |
Re: Umgebungsvariablen dauerhaft setzen
Das würd ich ja gerne, nur:
Delphi-Quellcode:
Kann ich Path nicht weder lesen noch schreiben.
const
S_ENVIRONMENT = 'HKEY_LOCAL_MACHINE\SYSTEM\'+ 'CurrentControlSet\Control\Session Manager\Environment\'; procedure AddExecutePath(aPath: string); var Reg: TRegistry; Path: string; Size: integer; SS: TStringStream; begin Reg := TRegistry.Create; try Reg.RootKey := HKEY_LOCAL_MACHINE; Reg.OpenKey(S_ENVIRONMENT, true); Path := Reg.ReadString('Path'); writeln('Path: '+Path); // Path ist '' Path := Path + aPath + ';'; Reg.WriteString('Path', Path); // Exception: Fehler beim setzen der Daten Reg.CloseKey; finally //FreeAndNil(Reg); end; end; |
Re: Umgebungsvariablen dauerhaft setzen
Du brauchst Administratorrechte, um in HKEY_LOCAL_MACHINE was zu ändern.
Versuch das gleiche mal in HKEY_CURRENT_USER. Eventuell befinden sich die Variablen da aber an einer anderen Stelle, das weiß ich nicht. |
Re: Umgebungsvariablen dauerhaft setzen
Hallo Björn,
unter Windows arbeitet man eigentlich nicht mehr mit der PATH-Variable im global environment. Trage dein Programm in der Registry unter
Code:
ein. Den Standardwert des Schlüssels setzt du auf den vollen Pfadnamen deiner Anwendung. Verwendet deine Anwendung DLLs, dann trägst du deren Speicherort(e) getrennt durch Semikolon in den Wert "Path" ein. Ohne Admin-Rechte kannst du das analog im Hive HKEY_CURRENT_USER machen.[HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\myapp.exe] @="C:\\Programme\\Delphi-PRAXiS\\arbu man\\myapp.exe" Path="C:\\Programme\\Delphi-PRAXiS\\arbu man\\System;C:\\Windows\\System32" Gute Nacht |
Re: Umgebungsvariablen dauerhaft setzen
Danke, marabu jetzt kann ich die Programme wenigstens durch Ausführen starten :)
mfg, Björn |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:12 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