Hallo,
ja, DEF files sind notwendig bei C++.
Diese Seite habe ich mir bereits durchgelesen, allerdings steht dort als einzigste Lösung, das Symbol mit Dekoration zu exportieren. Also "myfunction@0" anstelle "myfunction". Ich finde die zwingende Dekoration eines Exportsymbols allerdings unschön. (und ist mir so auch nicht bei bekannten DLLs aufgefallen)
Meine LIB sieht derzeit so aus:
Code:
LIBRARY MYDLL
EXPORTS
myfunction = _myfunction@0
Allerdings meckert C++ immer noch, dass "_myfunction@0" nicht aufgelöst werden kann, trotz Alias in der DEF. Mit einem Hexeditor kann ich sehen, dass in der DEF nur "_myfunction" definiert wird, aber nicht "_myfunction@0" wie ich es per Alias definiert habe.
Es muss doch einen Weg geben, undekorierte Symbole importieren zu können - schließlich ist die
WinAPI auch komplett undekoriert.
Gruß
Daniel Marschall