Den Record als Result zurückzuliefern ist sehr gewagt. Ein C++/VB Programm kann damit überhaupt nichts anfangen und wird den Speicher auch nicht freigeben, bzw. ihn, da er nicht von selbigem reserviert wurde überschreiben. Ich kenne auch keine
WinAPI die einen Record so zurückkliefert.
Eine bessere Deklaration wäre (
WinAPI konform):
procedure info(var AInfo: TInfo); stdcall;
@sakura: Das
export Symbol ist veraltet und nur noch zur Kompatiblität zu älterem Code vorhanden. Es hat keine Bedeutung mehr im 32Bit Zeitalter.
Was am obigen Code fehlt ist der
exports Abschnitt:
Delphi-Quellcode:
library xyz;
...
exports
info,
language;
end.