如何访问c++;c#代码中的dll类 我在第三方DLL中有C++类。< /P>

如何访问c++;c#代码中的dll类 我在第三方DLL中有C++类。< /P>,c#,winapi,dllimport,C#,Winapi,Dllimport,如果我调用Assembly.LoadFrom(),VS会抛出一个未处理的异常,因为模块中不包含清单 我可以使用DllImport调用全局函数来获取某个类的实例 然后如何调用其成员函数之一?Assembly.LoadFrom用于加载托管程序集 对于非托管程序集,此选项是必需的 < P>用C++/CLI创建包装DLL,显示C++函数 例如: //class in the 3rd party dll class NativeClass { public: int NativeMeth

如果我调用Assembly.LoadFrom(),VS会抛出一个未处理的异常,因为模块中不包含清单

我可以使用DllImport调用全局函数来获取某个类的实例


然后如何调用其成员函数之一?

Assembly.LoadFrom用于加载托管程序集

对于非托管程序集,此选项是必需的


< P>用C++/CLI创建包装DLL,显示C++函数

例如:

//class in the 3rd party dll
class NativeClass
{
    public:
    int NativeMethod(int a)
    {
        return 1;
    }   
};

//wrapper for the NativeClass
class ref RefClass
{
    NativeClass * m_pNative;

    public:
    RefClass():m_pNative(NULL)
    {
        m_pNative = new NativeClass();
    }

    int WrapperForNativeMethod(int a)
    {
        return m_pNative->NativeMethod(a);
    }

    ~RefClass()
    {
        this->!RefClass();
    }

    //Finalizer
    !RefClass()
    {
        delete m_pNative;
        m_pNative = NULL;
    }
};
看一下“从C++调用C++非托管类”