Ahh das kann ich dir sogar erklären. Das Name-Mangling mit vorranstehendem _ (bzw. ohne bei
cdecl
) und folgendem @n ist nur für die
stdcall
Calling-Convention. Unter 64-Bit werden allerdings sämtliche expliziten Calling-Conventions ignoriert und überall der 64-Bit vector-call verwendet (von Delphi-Seite aus).
Siehe dazu auch:
https://en.wikipedia.org/wiki/X86_ca...ing_convention
https://en.wikipedia.org/wiki/Name_mangling
Edit:
Aber wenn ich das richtig sehe, exportiert deine
DLL ja scheinbar eh auch eine ungemanglete Version. Kannst du mal sowohl die aktuelle 64-Bit
DLL (als Kompilat) als auch den C/C++ Header mit Testprojekt hochladen? Dann würde ich mal drüberschauen.