遇到这种情况,首先要排查的是dll本身的问题。看看opencv配置是否正确,能否正常运行opencv的算法程序。
其次,保证dll和C#工程的都是32位系统或64位系统下开发的。
选择C++生成的32位的dll还是64位的dll
C#在右边的“解决方案资源管理器”里,右键该项目点击属性。在属性窗口里选择“生成”——“目标平台”下拉里选中“x86"或"x64"即可。
此外,还有可能是VS中C#工程的问题,用记事本打开对应的工程文件(*.csproj),如下图<Prefer32Bit>false</Prefer32Bit>节点,根据情况修改为true或false。
若以上方法还未解决,可能缺少C++的运行环境,重新安装“VC++ 2005/2008/2010/2012/2017运行库集 32位/64位 。安装完毕记得重启电脑。