Einzelnen Beitrag anzeigen

Bastian Th.

Registriert seit: 7. Nov 2008
3 Beiträge
 
#1

Wildcards im Registry Key Path [gelöst]

  Alt 7. Nov 2008, 09:23
Hallo Leute.

Meiner erster Post und gleich unverschämter weise ne Frage

Ich habe ein Konsolenprogramm geschrieben das mir zuerst den aktuellen Pfad in dem das Programm ausgeführt wird ausliest. Anschließend hole ich mir den Inhalt des Key´s Path aus der Registry in eine String Variable. An diese String Variable hänge ich dann ein Semikolon und den ausgelesenen aktuellen Pfad. Jetzt wird der Key Path in der Registry geöffnet und mit dem Inhalt des erweiterten Strings gefüllt.

Das Funktioniert auch alles so weit ganz gut.

Leider werden im Key Path in der Registry aber Wildcards wie %system% und ähnliches verwendet. Mein Programm liest und setzt aber leider die statischen Pfade und nicht die Wildcards. Das ist extrem schlecht.

Wie kann ich es also hinbekommen das er mir die Wildcards mit ausliest und auch wieder so zuückschreibt ????

Ich hänge hier auch nochmal mein Programm an

Code:
program PPath_Variable;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  JCLSYSINFO,
  Registry,
  Windows;

const
name = 'Path' ;

var
dir, path : string;
regist: TRegistry;

begin
dir := GetCurrentDir;
GetEnvironmentVariable(name, path);
path := path+';'+dir;


  regist:=TRegistry.Create;
  try
   regist.RootKey:=HKEY_LOCAL_MACHINE;
   regist.OpenKey('\SYSTEM\ControlSet001\Control\Session Manager\Environment', true);
   regist.WriteExpandString('Path', path);
   regist.CloseKey;
  finally
   regist.free;

end;
end.
Vielen dank schonmal für eure Hilfe

Gruss Bastian
  Mit Zitat antworten Zitat