Nur woher soll ich dann den richtigen Typen kennen, wenn die
IDE mir schon PWideChar anzeigt?
In die
OH oder die Deklaration schauen? (Letzeres geht bei den Starter leider nicht)
Wie bereits gesagt, am Einfachsten immer String/PChar verwenden, da Delphi seine Deklarationen auch so schreibt.
Außer man weiß schon genau, dass hier feste Typen verwendet werden müssen.
Es gibt einige APIs, die es nur in einer Version (
ANSI/
Unicode) gibt.
Und auch Daten nach Extern (z.B. in Datei oder Stream zu einem anderen Programm) sollten besser immer statisch sein. (so lange nicht irgendwo das Format mit übergeben wird)
Wenn das eine Programm als
ANSI compiliert wurde und das Andere als
Unicode, würde es sonst Probleme geben. Das gilt auch für die Übergabe zwischen EXE und
DLL.
Nur bei 32 und 64 Bit gibt es mit EXE und
DLL keine Probleme, da Beide gleich sein müssen. (abgesehn von einem OutOfProcess-Server bei
COM-DLLs)
Alias werden "leider" nicht angezeigt. Das wäre mal ein gutes Feature, aber nach dem Compilieren ist nur der "Ursprungstyp" und nicht der Alias bekannt, da der Alias beim Compilieren durch diesen Typen ersetzt wird.