Ich habe ein Erbe verwalteten C++ dll bekam, und ich brauche eine Funktion aufrufen, die einen verwalteten Typ zurückkehrt.Exportfunktion mit clr Parameter aus dll?
Für dllexports ohne verwaltete Typen, das ist einfach, definiere ich nur meine statische c (++) Funktion in einem Header wie folgt aus:
extern "C"
{
__declspec(dllexport) int __cdecl InitSystem();
}
Aber jetzt ist die statische c (++) Funktion sollte zurückkehren ein verwalteter Typ, und hier habe ich ein Problem. Wenn ich (zum Beispiel) versuchen:
extern "C"
{
__declspec(dllexport) System::Collections::Generic::List<System::String^>^ __cdecl InitSystem();
}
ich einen Compiler-Fehler (Funktionsdefinition Bedürfnisse __clrcall Signatur).
Da die DLL nicht eine Baugruppe (glaube ich), ich ist ein bisschen mit einem Verlust, wie ein einfachen Funktionsaufruf exportieren .net/clr Parameter angeben kann. Das ist wahrscheinlich einfach und ich schaue nur in die falsche Richtung.