C# OpenCVSharp:无法初始化OpenCVSharp.CPlusPlus.Mat或使用.CPlusPlus中的任何内容

C# OpenCVSharp:无法初始化OpenCVSharp.CPlusPlus.Mat或使用.CPlusPlus中的任何内容,c#,opencv,mat,opencvsharp,typeinitializeexception,C#,Opencv,Mat,Opencvsharp,Typeinitializeexception,我已经在我的项目中与NuGet manager一起安装了最新的OpenCVSharp 2(2.4.10.201…)。关于OpenCVSharp.CvMat的一切工作正常(加载、操作等),因此我确信安装是正确的 但是我根本不能使用OpenCVSharp.CPlusPlus!我试图简单地创建一个垫子,但没有效果: using OpenCvSharp; using OpenCvSharp.CPlusPlus; using MyCVSharp; using System.Diagnostics; usi

我已经在我的项目中与NuGet manager一起安装了最新的OpenCVSharp 2(2.4.10.201…)。关于OpenCVSharp.CvMat的一切工作正常(加载、操作等),因此我确信安装是正确的

但是我根本不能使用OpenCVSharp.CPlusPlus!我试图简单地创建一个垫子,但没有效果:

using OpenCvSharp;
using OpenCvSharp.CPlusPlus;
using MyCVSharp;
using System.Diagnostics;
using System.Collections;

class MainClass
{
    static void Main()
    {
        Mat test3 = new Mat( new Size( 100, 100 ), MatType.CV_8UC1 ); // ERROR
        Mat test2 = new Mat( "f1.png", LoadMode.Color ); // ERROR

        CvMat test = new CvMat( "f1.png", LoadMode.Color ); //; THIS WORKS
错误是:

MyCVSharpTEST.exe中发生类型为“System.TypeInitializationException”的未处理异常

其他信息:“OpenCvSharp.CPlusPlus.Mat”的类型初始值设定项引发异常

我的项目旁边部署了很多DLLOpenCvSharp.CPlusPlus.dllOpenCvSharp.dll部署在MyCVSharpTEST.exe旁边的同一文件夹中,同时创建一个dll文件夹,其中x86和x64子文件夹分别包含22个相关dll

我甚至尝试从已经创建的CvMat创建一个Mat,但仍然出现相同的错误

编辑: try-catch块显示错误:

System.TypeInitializationException: The type initializer for 'OpenCvSharp.CPlusPlus.Mat' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'OpenCvSharpExtern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
   at OpenCvSharp.CPlusPlus.NativeMethods.core_Mat_sizeof()
   at OpenCvSharp.CPlusPlus.Mat..cctor()
   --- End of inner exception stack trace ---
   at OpenCvSharp.CPlusPlus.Mat..ctor()
   at MainClass.Main() in C:\Users\kotsias\Documents\Visual Studio 2015\Projects\MyCVSharp\ConsoleApplication1\Test.cs:line 14

由于该问题现在似乎与dll有关,.

您可以向我们显示内部异常吗?@LeonidVasilyev抱歉,我如何使用Visual Studio 2015显示该异常?有多种方法可以做到这一点。您可以使用try catch块包装
new Mat()
,然后使用附加的调试器启动应用程序,并手动检查
Exception.InnerException
属性。查看讨论、C#参考和MSDN页面。您可以向我们显示内部异常吗?@LeonidVasilyev抱歉,我如何使用Visual Studio 2015显示这一点?有多种方法可以做到这一点。您可以使用try catch块包装
new Mat()
,然后使用附加的调试器启动应用程序,并手动检查
Exception.InnerException
属性。查看讨论、C#参考和MSDN页面。