Versuch es mal so:
Delphi-Quellcode:
function GetMemoryReserved : Cardinal;
var
State : TMemoryManagerState;
idx : Integer;
begin
Result := 0;
GetMemoryManagerState( State );
for idx := low( State.SmallBlockTypeStates ) to high( State.SmallBlockTypeStates ) do
Result := Result + State.SmallBlockTypeStates[ idx ].ReservedAddressSpace;
Result := Result + State.ReservedMediumBlockAddressSpace + State.ReservedLargeBlockAddressSpace;
end;
Dem System ist es schnurzpiepe, was du an Speicher tatsächlich belegst.
Es zählt was du reservierst (auf welcher Liege liegt dein Handtuch), denn das ist für das System auch nicht mehr nutzbar und gilt somit als belegt/benutzt.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)