Łączenie błędów łącza z zarządzanego do niezarządzanego C ++ pomimo połączenia z plikiem .lib z wyeksportowanymi symbolami

Pomimo następujących postów na temat używania i łączenia się z niezarządzanym kodem C ++ z biblioteki DLL opakowującej C ++ / CLI, nie mogę rozwiązać tych problemów z łączem.

1>MyClassAdapter.obj : error LNK2028: unresolved token (0A00000A) "public: __thiscall MyClass::~MyClass(void)" (??1MyClass@@$FQAE@XZ) referenced in function "public: void * __thiscall MyClass::`scalar deleting destructor'(unsigned int)" (??_GMyClass@@$FQAEPAXI@Z)
1>MyClassAdapter.obj : error LNK2028: unresolved token (0A00000B) "public: __thiscall MyClass::MyClass(void)" (??0MyClass@@$FQAE@XZ) referenced in function "public: __clrcall WrapperLayer::MyClassAdaptor::MyClassAdaptor(void)" (??0MyClassAdaptor@WrapperLayer@@$FQ$AAM@XZ)
1>MyClassAdapter.obj : error LNK2019: unresolved external symbol "public: __thiscall MyClass::MyClass(void)" (??0MyClass@@$FQAE@XZ) referenced in function "public: __clrcall WrapperLayer::MyClassAdaptor::MyClassAdaptor(void)" (??0MyClassAdaptor@WrapperLayer@@$FQ$AAM@XZ)
1>MyClassAdapter.obj : error LNK2019: unresolved external symbol "public: __thiscall MyClass::~MyClass(void)" (??1MyClass@@$FQAE@XZ) referenced in function "public: void * __thiscall MyClass::`scalar deleting destructor'(unsigned int)" (??_GMyClass@@$FQAEPAXI@Z)

Mam niezarządzany dll natywny C ++ z prostą klasą, odpowiednio eksportujący / importujący symbole

// MyClass.h
#ifdef _EXPORTING
   #define DLL_PUBLIC __declspec(dllexport)
#else
   #define DLL_PUBLIC __declspec(dllimport)
#endif

class DLL_PUBLIC MyClass { . . . };

I widzę, że plik linkera .dll i .lib jest generowany po zbudowaniu.

Następnie mam zarządzany projekt opakowania C ++ / CLI (także dll), który łączy się z MyClass.lib w ustawieniu Linker-> Input-> Additional Dependencies. Dołączono również plik .h z MyClass w projekcie opakowania i widzę, że sln może zobaczyć plik MyClass.h.

// MyClassAdaptor.h

#include "MyClass.h"

namespace WrapperLayer
{
    public ref class MyClassAdaptor 
    { 
      . . . 
    private:
        MyClass* _myclass;  
    }; 
}

Czego może zabraknąć?

questionAnswers(1)

yourAnswerToTheQuestion