Не удалось загрузить файл или сборку 'Magick.NET-x86.DLL' или одну из ее зависимостей

Я использовал Magick.NET, который является оболочкой.NET для ImageMagick, и он выдает вышеуказанную ошибку на клиентском компьютере. Это работает отлично на моей машине, хотя. Я не установил ImageMagick, поэтому я просто не могу понять, что мне нужно делать на клиентском компьютере. У меня VS 2012 установлен.

Кроме того, Magick.NET включает в себя ImageMagick, я думаю, что он использует C++/CLI и предоставляет интерфейс.NET для родного ImageMagick, все в одной DLL. Так какая DLL ей нужна?

(Я только что столкнулся с этой ошибкой, поэтому публикую найденное решение.)

3 ответа

Решение

Для Magick.NET требуется установить VC 2012 Runtime, а для Magick.NET V7+ (.NET 4.0) требуется 2012 и VC 2015 Runtime. Скачайте и установите на клиентский компьютер. Если он открывает диалоговое окно "восстановить или удалить", значит, оно уже установлено, и у вас может отсутствовать другая зависимость. Если нет, установите видеомагнитофон и перезапустите приложение.

Для меня понадобилась еще одна вещь: в пуле приложений 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-битный = ложь

Другие вопросы по тегам