Jupp, so geht es:
Delphi-Quellcode:
function PathFromIDList(Pidl: PItemIdList): WideString;
const
NTFS_MAX_PATH = 32767;
var
Path: PWideChar;
begin
GetMem(Path, (NTFS_MAX_PATH + 1) * 2);
try
if not SHGetPathFromIDListW(Pidl, Path)
then
begin
FreeMem(Path);
raise Exception.Create(rsE_GetPathFromIDList);
end;
Result := WideString(Path);
finally
FreeMem(Path);
end;
end;
Ich habe noch den Ressourcenschutzblock ergänzt.
Zitat:
Zeiger auf einen Zeiger der auf eine Variable zeigt
Gehts noch?