Einzelnen Beitrag anzeigen

ringli

Registriert seit: 7. Okt 2004
510 Beiträge
 
Delphi 11 Alexandria
 
#1

Unit zur Verwendung von SHGetKnownFolderPath

  Alt 11. Jun 2009, 15:00
Wie einige sicher wissen hat sich in Vista (und höher) die Ermittlung von Systemordnern geändert. Ab Vista sollte zur Ermittlung von Systemordnern nur noch die Funktion SHGetKnownFolderPath verwendet werden. Die bisher verwendete Funktion SHGetFolderPath und die CSIDL-Konstanten sind nur noch aus Kompatibilitätsgründen vorhanden. Da ich bisher keine komplette Delphi-Implementation gefunden habe, habe ich die angehängte Unit erstellt. Vielleicht kann der ein oder andere sie gebrauchen.

Die Verwendung der Unit ist einfach:
Delphi-Quellcode:
uses
   ...uGetKnownFolderPath;

.
.
.
procedure TForm1.Button1Click(Sender: TObject);
var
  ws : WideString;
begin
  ws := GetKnownFolderPath(FOLDERID_Windows);
  ShowMessage(ws);
end;
Dieser Aufruf gibt bspw. C:\Windows zurück. Die Bedeutung der einzelnen FOLDERID's kann im MSDN nachgelesen werden.
Angehängte Dateien
Dateityp: pas ugetknownfolderpath_143.pas (9,5 KB, 305x aufgerufen)
  Mit Zitat antworten Zitat