ich habs gefunden, wenn ich bei VirtualQuery als ersten Parameter die Adresse einer globalen Angebe funktioniert es, nur eben bei der lokalen Variablen nicht.
es sieht jetzt also wie folgt aus
Delphi-Quellcode:
[...]
implementation
{$R *.dfm}
var GlobalVar: Cardinal;
procedure TForm1.FormCreate(Sender: TObject);
var QueryRes: TMemoryBasicInformation;
LBuffer: String;
begin
VirtualQuery(@GlobalVar, QueryRes, SizeOf(QueryRes));
SetLength(LBuffer, MAX_PATH);
SetLength(LBuffer, GetModuleFileName(Cardinal(QueryRes.AllocationBase), PChar(LBuffer), Length(LBuffer)));
showmessage(String(LBuffer));
end;