Registriert seit: 28. Nov 2016
223 Beiträge
|
AW: Rückgabe-Pointer PUTF8String aus DLL in String umwandeln?
17. Jan 2020, 08:02
In den Remarks steht, dass das ein "Mananged String" ist, du dich also nicht um die Freigabe kümmern sollst/darfst.
Könnte es sein, dass Delphi von sich aus was aufräumt und du deswegen Probleme bekommst?
Vielleicht klappt es, wenn du die Funktion nicht mit "PUTF8String" definierst, sondern schlicht als Pointer
und dann erstmal im Debugger (Stack, CPU-Adresse, whatever) schaust, ob du bei der zurückgegebenen Adresse was findest.
Dann könntest du vielleicht die Daten lokal kopieren (move), damit Delphi nicht das Original freigeben kann.
Ist jetzt nur ein Gedankengang, weiß auch nicht ob das wirklich stimmt, aber vielleicht hilft es den richtigen Weg zu finden.
Wenn's gar nicht anders geht vielleicht ein Mini-Programm schreiben und das hier bereit stellen.
LG Incocnito
|