Не удалось загрузить файл или сборку, PublicKeyToken = null - PullRequest
9 голосов
/ 22 октября 2011

Не удалось загрузить файл или сборку 'NCrawler.GeckoProcessor, версия = 3.0.0.0, Culture = нейтральный, PublicKeyToken = null' или одна из его зависимостей.

Когда я вызываю CrawlUsingGeckoProcessor.Run();

Что это значит?Я могу нажать «перейти к определению» и увидеть метод Run().

Ответы [ 4 ]

14 голосов
/ 22 октября 2011

Эта ошибка обычно означает, что сборка не найдена.Попробуйте убедиться, что файл существует в каталоге, где запущено ваше приложение.

Если вы все еще не можете определить, какой файл не удается загрузить, попробуйте использовать инструмент, такой как Fusion Log Viewer (запустите fuslogvw.exe изКомандная строка Visual Studio), чтобы определить, какие файлы CLR пытался загрузить и откуда, чтобы вы могли точно увидеть, что не удалось.

13 голосов
/ 15 октября 2012

Я столкнулся с той же проблемой, и причина была в том, что я скомпилировал свои EXE и DLL на 32-битной машине для "x86", потому что это зависит от библиотеки C ++ \ CLI, скомпилированной для Win32.Затем я попытался использовать эту библиотеку на 64-битной машине из 64-битного процесса.Очевидно, что 64-битный процесс не может загрузить 32-битные библиотеки, поэтому я получил эту ошибку, которая не очень помогает понять проблему.

Так что причина может быть в том, что вы пытаетесь использовать 32-битную библиотеку из 64-битнойпроцесс.

1 голос
/ 06 января 2018

Построение поверх nogard ответа, попробуйте установить платформу решений на x86

enter image description here

0 голосов
/ 30 января 2013

попробуйте перейти в настройки приложения. Включите 32-разрядную обработку. Если приложение было встроено в .net 2.0, а текущий сервер - IIS 7

...