Das lässt sich relativ elegant mit einem AnsiString lösen:
Delphi-Quellcode:
var
buffer : Ansistring;
pbuffer : PChar;
begin
SetLength(buffer, iSizeOfBufferToSupply);
pbuffer := PChar(buffer); // Zeiger auf 1. Byte
Der Vorteil in Vergleich zu new & dispose bzw. GetMem & FreeMem ist, dass du dir
über die Freigabe des Speichers keine Gedanken machen musst.