Zitat von
Robert Marquardt:
Als Parameter ist "wchar_t a[]" in C aequivalent mit "wchar_t *a".
Die korrekte Konvertierung nach Delphi lautet "a: PWideChar".
Zitat von
Robert Marquardt:
Man kann einen WideString via PWideChar(WideS) uebergeben, aber wenn die Funktion den String schreibt,
dann muss man vorher mit SetLength() eine genuegende Puffergroesse garantieren.
Es scheint auch mit WideString zu gehen. Habe mir das mal kurz im Disassembler angeschaut, wenn ich einen WideString an eine stdcall-Prozedur übergebe. In diesem Fall wird der Pointer auf die Zeichenkette übergeben. Aber darauf würde ich mich (s.o.) nicht verlassen.