无法加载文件或程序集';Magick.NET-x86.DLL';或其依赖项之一

本文关键字:依赖 DLL NET-x86 加载 程序集 Magick 文件 | 更新日期: 2023-09-27 18:00:10

我使用了Magick.NET,它是ImageMagick的.NET包装器,它在客户端机器上引发了上述错误。不过它在我的机器上运行良好。我还没有安装ImageMagick,所以我根本不明白我需要在客户端机器上做什么。我安装了VS 2012。

此外,Magick.NET中包含ImageMagick,我认为它使用C++/CLI,并向本机ImageMagick公开.NET接口,所有这些都在一个DLL中。那么它需要什么DLL呢?

(我刚刚遇到这个错误,所以发布了我找到的解决方案。)

无法加载文件或程序集';Magick.NET-x86.DLL';或其依赖项之一

Magick.NET需要安装VC 2012 Runtime,Magick.NET V7+(.NET 4.0)需要安装2012和VC 2015 Runtime。下载并安装在客户端计算机上。如果它弹出一个"修复或卸载"对话框,那么它已经安装好了,您可能缺少另一个依赖项。如果没有,请安装VCR并重新启动应用程序。

对我来说,还需要一件事:在IIS应用程序池中->高级设置->启用32位应用程序

我有错误

System.TypeInitializationException: The type initializer for 'X86' threw an exception. ---> 
System.DllNotFoundException: Unable to load DLL 'Magick.NET-Q16-x86.Native.dll': Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))

通过设置应用程序池->高级设置->启用32位=false

进行修复