Mein Vorschlag:
Delphi-Quellcode:
function GetAccessNames(out iCount : Cardinal): PSI_ACCESS;
var lSiEntry: PSI_ACCESS;
i : Cardinal;
begin
iCount := 32;
GetMem(lSiEntry, Sizeof(si) * iCount);
result := lSiEntry;
for i := 0 to iCount -1 do
begin
hier zugriff auf lSiEntry^ ganz leicht
Inc(lSiEntry);
end;
end;
Der Vorschlag ist nur zum Elementzugriff. Die angesprochene Alloziierung von Speicher welche auf einer anderen Ebene freigegeben wird, ist hier nicht korrigiert und sollte wie von xaromz beschrieben gelöst werden.