Jupp, wie gesagt, PWideChar,
* entweder das ist ReadOnly dann ist der Andere dir egal ... DU mußt nur dafür sorgen, dass der Zeiger lange genug gültig ist
* oder der wer speicher erstellt, der gibt auch frei
* * der Nutzer erstellt und du schreibst nur den Inhalt ... der Nutzer gibt frei wann er will
* * oder du erstellst den Speicher, in deinem Speichermanafer, dann mußt du auch freigeben ... der Nutzer ruft dein Free auf
* * oder du nutzt einen globalen Speicher ala GlobalAlloc, VirtualAlloc oder eben den
WinAPI vom BSTR
In Delphi WideString und Andere nutzen auch Klassen dafür, oder sie nutzen direkt die
WinAPI SysAllocString und ihre Freunde.
Kannst in Delphi auch die
API nutzen, aber der WideString macht einfach alles automatisch, inkl. AutoCasts von/in andere String-Typen. Und mit automatischem SysFreeString. (nur das SysReleaseString/SysAddRefString hat Borland/Codegear/Embarcadero noch nicht geschaft ... wurde ja auch erst mit XP erfunden)