我在 Visual Studio 2013 中使用 OpenCvSharp。我已经通过 Nuget 安装了它,它工作正常。
但是当我部署应用程序时,它有一个 128M 的 DLL 目录。 x86 为 128M,64 为 128M。
我基本上使用的是 HighGui 和 Core 的功能。当我删除 DLL 时,加载时 OpenCvSharp 会引发异常。
我试过重新编译 OpenCvSharp 没有成功(这是另一个问题),甚至重新编译 OpenCV 以获得更小的 DLL。
有没有办法只加载所需的 DLL 并指出可以删除哪个?
最佳答案
您的部署规模听起来相当大......
当我使用 Nuget 包 OpenCvSharp-AnyCPU 2.4.10 创建一个测试项目时,我得到:
OpenCvSharp 按需加载 native dll(即当 C# 代码需要 native 代码时),因此您可以删除您的代码从不使用的 dll,但您必须检查源代码或通过反复试验找出这一点。
默认情况下,您的 C# 应用程序将构建目标
Any CPU
这意味着需要两组 dll,但您可以设置 Platform target: x86
在构建属性中,只是不部署 x64 dll。
关于c# - OpenCvSharp 仅以所有 OpenCvDll 开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29123837/