我创建了imageHolder类:
public class ImageHolder : Image<Bgr, Byte>
{
private String imagePath;
public ImageHolder(String path):base(path)
{
this.imagePath = path;
}
public String imgPathProperty
{
get
{ return imagePath; }
set
{ imagePath = value; }
}
}
我创建了类的实例并将其初始化,如下所示:
private ImageHolder originalImageHolder;
originalImageHolder = new ImageHolder(openFileDialog.FileName);
在运行时我得到这个例外:
'Emgu.CV.CvInvoke'的类型初始化程序引发了异常。
这是Solution Explorer窗口:
知道为什么我会得到这个例外以及如何解决它?
提前谢谢。
答案 0 :(得分:24)
每当静态构造函数抛出异常时,或者每当您尝试访问静态构造函数引发异常的类时,都会抛出TypeInitializationException (您看到的异常) - 它的InnerException属性是包含实际抛出的异常细节的属性 - 这是您需要调查的例外。
在这种情况下,从您的屏幕截图中看,问题似乎是找不到DLL“opencv_core240.dll”。这可能有很多原因
我建议您查看this question,看看有没有任何建议可以帮助您。
答案 1 :(得分:2)
检查此字段对我来说很有用。在项目→属性→构建(主/启动项目)
下答案 2 :(得分:1)
我通过重新安装 MSVCRT 9.0 SP1 x86
解决了这个问题