C#编写的exe调用了调用有opencv数据库的dll,在其他电脑上使用的一些问题
1. 当你的dll调用了其他数据库以后如opencv, 你可能会碰到两个问题,一个问题是可能会报错找不到你写的dll,这边主要是你的debug里面缺少了你的dll所调用的东西。
2. 解决方案如下,到网上下载一个dependency walker, 直接导入你写的dll,会显示你的dll调用了什么其他的dll。 把他们和C#的exe放到一起就行了,只需要一级就可以了,二级以后的不需要。
3 第二个问题的话,就是碰到试图加载格式不正确的程序,这主要是由于你写的dll可能是X86的,最后导致与现在好多X64的电脑不匹配。
4. 有个简单粗暴的方法,那就是直接把你的dll程序直接编译到X64就行了,最多把X64的数据库也配置一下,然后不要忘了把运行库改为/MDd,
5. 然后把你的C#编译的也改为X64就行了,最好不要用anyCPU,可能会有问题。
6. 然后我看网上有人直接把C#的改成X86的,没什么效果,可能要改其他电脑上的程序池什么的。然后为了在其他电脑上用,最后在属性里把目标框架改小一点,4.00什么的