Home » Tipps & Tricks » Dateien/Verzeichnisse » Verzeichnisse » System-Verzeichnis ermitteln

System-Verzeichnis ermitteln

Folgende Funktion ermittelt das System-Verzeichnis des Betriebssystem. Getestet wurde die Funktion unter Windows-Betriebssystemen.

function GetSystemDir: string;
var
  Dir: string;
  Len: DWord;
begin
  SetLength(Dir,MAX_PATH);
  Len:=GetSystemDirectory(PChar(Dir),MAX_PATH);
  if Len>0 then
  begin
    SetLength(Dir,Len);
    Result:=Dir;
  end
  else
    RaiseLastOSError;
end;

Gängige System-Verzeichnisse sind C:WindowsSystem oder bei auf NT basierenden Betriebssystemen C:WindowsSystem32.
RaiseLastOSError ist erst ab Delphi 6 verfügbar. Programmierer, die mit älteren Versionen arbeiten müssen an dieser Stelle RaiseLastWin32Error verwenden.

In verschiedenen FAQs findet man immer wieder Lösungen, wo dem Programmierer gezeigt wird, wie man das System-Verzeichnis über die Registry ermitteln kann. Von dieser Vorgehensweise wird generell abgeraten, da sich die Positionen in der Registry mit jeder Windows-Version ändern können.

Wie Sie das Windows-Verzeichnis ermitteln können, erfahren Sie unter den Verweisen.