如何将 vs2008 c++ OpenCV dll 构建到 vs2008 C#?

Posted

技术标签:

【中文标题】如何将 vs2008 c++ OpenCV dll 构建到 vs2008 C#?【英文标题】:How to build vs2008 c++ OpenCV dll to vs2008 C#? 【发布时间】:2018-10-05 13:55:03 【问题描述】:

我使用了以下参考:

https://drthitirat.wordpress.com/2013/05/30/combine-gui-of-c-with-c-codes/

...尝试使用vs2008 win32项目构建C++ opencv dll,然后打开新的C#项目导入C++ dll。

在 C++ dll 中,我使用 OpenCV 读取图像并使用 OpenCV 显示图像。

C#导入dll,然后运行,但是显示:

HRESULT: 0x8007007E,找不到dll。

我该如何解决这个问题?

【问题讨论】:

Visual Studio 的“错误查找”显示 HRESULT 表示“找不到指定的模块”。有了这些信息,您就可以开始以正常方式跟踪此类问题。 Process Monitor 或 FusLogVw 应该为您指明正确的方向 【参考方案1】:

谢谢格兰特·米勒

问题:HRESULT: 0x8007007E 已解决。 我忘记将 tbb.dll 复制到我的项目中。

如果 C# 项目是发布模式,只需将 tbb.dll 复制到 C# 项目。 如果C#工程是debug模式,把tbb.dll的文件名改成tbb_debug.dll,然后复制到C#工程中。

tbb.dll 的路径将在 C:\opencv\build\common\tbb\ia32\vc9

【讨论】:

以上是关于如何将 vs2008 c++ OpenCV dll 构建到 vs2008 C#?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 .dll 库与 C++ VS 项目链接?

vs 2008 部署项目不工作

用于标记未初始化变量的 VS 2008 编译器选项

C++ 应用程序(调试版)包含 VS 运行时库 msvcr90.dll 和 msvcr90d.dll

windows server 2008 上 VS 2008 中不支持的 rpcns4.dll 消息

VS2008 "无法找到资源编译器dll 请确保路径正确"