如何使用 MatroxImagingLibrary 修复 "BadImageFormatException"?

How to fix "BadImageFormatException" with MatroxImagingLibrary?

我正在 Visual Studio 的 C# .NET 项目上工作。

我正在尝试使用 MatroxImagingLibrary,所以我从 Nuget 下载了它,但它不起作用。抛出异常:"System.BadImageFormatException" in Matrox.MatroxImagingLibrary。

调用此行时抛出异常:

MIL.MappAllocDefault(MIL.M_DEFAULT, ref MilApplication, ref MilSystem, MIL.M_NULL, ref MilDigitizer, MIL.M_NULL);

这实际上是使用 MIL 方法的第一行,所以问题不是出在代码上。 当我使用调试器时,它告诉我:

"An attempt was made to load a program with an incorrect format"。我知道当 x32/x64 个文件之间出现问题时会出现此异常。

我尝试了我找到的所有解决方案,但其中 none 对我的问题有用(更改目标 CPU,将 mil.dll 放在与 . exe 等...)

感谢您花时间阅读我的问题,我希望有人能帮助我,我被困在我的学校项目中:(

问候,Leo

BadImageFormatException 的抛出可能有很多原因。您可以找到更多详细信息 here.

根据 的问题,我了解到它确实是一个 .NET 程序集,所以我最好的猜测是您使用的 .NET 版本与编译该程序集的版本不兼容。

This 答案应该可以帮助您确定库是为哪个 .NET 版本编译的。

得到答案后,将项目切换到该 .NET 版本应该可以修复错误。

感谢您的回答,

我看看你的方案能不能解决我的问题。目前我没有在我的项目上工作,但我会在测试时回来找你。

问候,Leo。