Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#1

C++ Funktion aus DLL exportieren

  Alt 7. Mai 2006, 09:57
Hallo,

ich bin grad bei meinen ersten Gehversuchen mit DLL's in C++.
Ich versuche wie folgt eine funktion aus einer DLL zu exportieren:
Code:
//Export-Anweisung
__declspec(dllexport) __stdcall int Test();

//Die Funktion selbst
int __stdcall Test()
{
  ShowMessage("Es scheint zu funzn.");
  return 5;
}
Leider wird die Funktion mit dem Namen "@Test$qqsv" exportiert und nicht mit dem Namen "Test".
Woran liegt das bzw. wie kann ich das ändern? Irgendwo hab ich auch gelesen das es zum exportieren auch noch eine Variante mit einer .DEF - Datei gibt. Allerdings fehlen mir dort komplett die Anhaltspunkte wie es damit funktioniert. Außerdem muss/sollte es ja auch mit der obigen Methode funktionieren.

[Edit]
Nach längerem frustrierten Suchen hab ich die Lösung gefunden:
Code:
extern "C" __declspec(dllexport) __stdcall int Test();
durch das vorranstellen von <extern "C"> wird der Exportname nicht decoriert.
[/Edit]
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat