@KodeZwerg:
Vielen Dank! Du hast mich auf die richtige Spur gebracht. Meine Lösung sieht jetzt folgendermaßen aus:
In der Delphi-
Dll habe ich AnsiString durch PAnsiChar ersetzt. Das allein reichte aber noch nicht, da dadurch zwar kein Fehler mehr auftrat, das Währungs-Feld der Struktur aber nur als leerer String übergeben wurde. In der C#-Struktur habe ich das Währungsfeld in Unmanaged.LPStr (statt wie bisher in UnmanagedType.ByValTStr) geändert.
Hier ist eine ganz gute Beschreibung der Problematik:
https://limbioliong.wordpress.com/20...d-code-part-1/