c++MFC DLL已经成功编译过并且也已经在控制台下面实现过的一个dll拿来在c#中引用,大家看看我这是出什么问题了
[DllImport("SAM.dll")]
private static extern void SendSnmp(string desAddr, string enterprise, string msg, int severity, int repeat);
在c++中那边的方法是
__declspec(dllexport) static void SendSnmp(CString desAddr,CString enterprise,CString msg,int severity=2,int repeat=1);
但是我运行了以后发现报错的是无法加载DLL“SAM.dll”:找不到指定的模块
[DllImport("SAM.dll")]
private static extern void SendSnmp(string desAddr, string enterprise, string msg, int severity, int repeat);
在c++中那边的方法是
__declspec(dllexport) static void SendSnmp(CString desAddr,CString enterprise,CString msg,int severity=2,int repeat=1);
但是我运行了以后发现报错的是无法加载DLL“SAM.dll”:找不到指定的模块
请确定你的c++ dll的编译模式
是否可以让方法再外部调用到 可见
extern "C" __declspec(dllexport) void __stdcall CppMethed(void);
其实比较简单的方法是用C++/CLI写一个托管类,直接调用C++函数,
然后在C#中通过这个托管类访问这个函数.