Jupp, Schnittstellen (
DLL) und Transportformate (Dateien) müssen immer feste Typen besitzen,
außer es wird mitgegeben welches Format gerade verwendet wird.
Hier kommt es natürlich auf das Format der
DLL an und dein Import muß das richtige Format verwenden.
PS: Warum es hier geknallt hat:
Delphi kann/darf bei ziwschen PAnsiChar und PWideChar die referenzierten Daten nicht konvertieren.
Bei AnsiString <> UnicodeString geht da, da dort eine dem Delphi bekannte Speicherverwaltung dahinter liegt und Delphi somit die Daten und deren Speicher (als Kopie) verändern kann.