2016-12-20 4 views
-2

В течение многих лет эта ошибка дает мне много головных болей, пытаясь понять, почему приложение, которое компилируется, не работает при запуске.Устранение ошибок «Невозможно загрузить файл или сборку»

В основном я получаю это со сторонними сборками и специально в приложениях, которые работают на полной платформе .NET Framework.

Мой вопрос: как мы их исправим?

  • Есть ли автоматизированный способ их устранения?
  • Есть ли инструмент для поиска переходных ссылок и их версий? * Является ли сборка привязкой в ​​app.config единственным способом разрешения конфликтов, когда сборки принадлежат третьим сторонам?
+1

Я всегда использовал fuslogvw.exe, чтобы найти их. Подробности можно найти здесь https://msdn.microsoft.com/en-us/library/e74a18c4%28v=vs.110%29.aspx – kmc059000

ответ

2

Довольно широкий вопрос, но вот несколько советов:

  1. Read this article on how runtime binding works.
  2. Разверните DLL-файлы в той же папке, что и исполняемый файл, или в поле GAC, или, если необходимо, используйте probing path.
  3. Компиляция с той же версией, которую вы собираетесь развернуть. Если у вас есть обновленная DLL и вы не хотите перекомпилировать, вы можете попробовать binding redirect.
  4. Если у вас возникли проблемы, воспользуйтесь Fusion logs для устранения неполадок.

 Смежные вопросы

  • Нет связанных вопросов^_^