Export-dll-Methode von C++ zu C#. Warum Brauch ich: "extern "C" "

In meine dll ist eine Methode, die ich exportieren möchten.

//Funktioniert:

extern "C" __declspec(dllexport)

//Wird nicht funktionieren

__declspec(dllexport)

C++ Export:

 extern "C" __declspec(dllexport) int Test();

C# importieren:

[DllImport("CircleGPU2_32.DLL", EntryPoint = "Test", 
    CallingConvention = CallingConvention.StdCall)]
public static extern int Test();

Warum brauche ich die extern "C" ?

  • Ich habe eine detaillierte Erklärung, warum es erforderlich ist, wenn Sie interessiert sind.
InformationsquelleAutor Pedro77 | 2011-12-16
Schreibe einen Kommentar