Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
Delphi XE2 Professional
|
Re: Mal wieder das nervige Thema Speicherorte
15. Jan 2010, 17:26
Ist folgende procedure.
Das Ergebnis des Strings stimmt auch. Habe ich hundert mal probiert.
Delphi-Quellcode:
{Speicherpfad ermitteln um Speicherziel der User Einstellungen festzulegen}
function GetSpecialFolder (aFolder: Integer): String;
var
pIdL: PItemIDList;
Path: Array [0..Max_Path] of Char;
Allocator: IMalloc;
begin
// ItemIdList für den Ordner holen
SHGetSpecialFolderLocation (0, aFolder, pIdL);
// ItemIdList in String umwandeln lassen
SHGetPathFromIDList (pIDL, Path);
// Speicher wieder freigeben
if Succeeded (SHGetMalloc (Allocator)) then
begin
Allocator.Free (pIdL);
{$IFDEF VER100}
Allocator.Release;
{$ENDIF}
end;
Result := Path;
end;
Gruß Jens
Jens Hartmann Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
|