Eigene C++-DLL einbinden !?!

Hallo,

ich habe vor, aus C# eine Methode in einer C+±DLL aufzurufen. Leider erhalte ich immer eine MissingMethodException.

Mein Aufruf sieht folgendermaßen aus:

**[DllImport(„MyControl.dll“)]
private static extern short StartControl();

short start = StartControl();**

Und hier die C+±Methode in der DLL:

**#ifdef CONTROL_EXPORTS
#define CONTROL_API __declspec(dllexport)
#else
#define CONTROL_API __declspec(dllimport)
#endif

extern „C“ CONTROL_API SHORT StartControl();**

Kann mir jemand sagen, was ich falsch machen bzw.
wie ich es richtig mache ?!?

Gruß,
Beanpole

Auch hallo.

Die Suche nach „DllImport“ unter http://www.entwickler-forum.de brachte jedenfalls ~80 Treffer, „MissingMethodException“ dagegen keinen. Aber dennoch sollten einige der dortigen Code Beispiele helfen :wink:

HTH
mfg M.L.

Schau’ vielleicht mal mit depends (http://www.dependencywalker.com/)nachnach), welche Funktionen Deine DLL denn tatsächlich offenlegt.
Evtl. musst Du StartControl noch in die entsprechende .def-Datei eintragen.

Gruß,
Martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]