Ich exportiere einen String (PWideChar) aus einer
DLL
Die Rückgabe kann ich ja schlecht löschen.
Delphi-Quellcode:
ExportPtr := AnsiStrAlloc(Length(strExport) + 1);
CopyMemory(ExportPtr, PAnsiChar(AnsiString(strExport)), Length(strExport) + 1);
Result := ExportPtr;
ExportPtr wird mit
StrDispose(ExportPtr);
freigegeben wenn die Anwendung(
DLL) beendet wird.
Welcher Datentyp ist Result? Falls das ein String ist, erzeugt die Zuweisung von ExportPtr eine Kopie und dann sollte man ExportPtr direkt danach freigeben können.