Wenn wir eine DLL mit __stdcall in Visual Studio 2008 kompilieren, sind die kompilierten Funktionsnamen in der DLL.GCC Kompilieren einer DLL mit __stdcall
Function
Obwohl, wenn wir die gleiche DLL mit GCC mit WX-dev-cpp GCC Hängt die Anzahl der paramers die Funktion hat, so der Name der Funktion Dependency Walker kompilieren aussieht.
Function @ numberOfParameters oder == Function @ 8
Wie sagen Sie GCC-Compiler von exportierten Symbole in der DLL entfernen @nn?
Danke roger für die Antwort, es stellte sich heraus, dass das Problem war, dass ein anderer Entwickler eine DEF-Datei in das Projekt platziert. Diese DEF-Datei teilte dem Linker die Namenskonventionen mit, die in der DLL verwendet werden sollten. Dies ist der Grund, warum wir einen anderen Bibliotheksnamen selbst mit derselben Aufrufkonvention erhalten haben. Die Lösung stellte sich heraus, dass einer unserer Entwickler WINAPI aus der Header-Datei entfernt hatte, als er seine eigene DLL für ein Projekt erstellte. Dies führte dazu, dass Windows Visual Studio auf die Standard-Aufrufkonvention von __cdecl (/ Gd) zurückgesetzt wurde. – Chad