Einzelnen Beitrag anzeigen

ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#6

Re: "C:\Programme" ermitteln?

  Alt 28. Nov 2005, 16:31
Jetzt bin ich gerade in meiner Virtual Machine selbst auf die Lösung gestoßen:

Code:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Programfilesdir
oder

Code:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Programfilespath

welche Lösung ist die bessere oder sind die gleichwertig?

[edit]: hat sich auch erledigt. Unter XP ist programfilespath nur "%Programfiles%".

[edit2]

... wodurch man dann zu folgender Funktion kommt:

Delphi-Quellcode:

uses
  [...], registry;

[...]

function getprogramfilesdir:string;
var
  r:tregistry;
begin
  r:=tregistry.Create(key_read);
  try begin
    r.RootKey:=HKEY_LOCAL_MACHINE;
    r.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion',false);
    result:=r.ReadString('ProgramFilesDir');
  end except end;
  r.free;
end;
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat