Сбой загрузки сборки с FileNotFoundException - Fusion говорит, что все в порядке - PullRequest
2 голосов
/ 07 марта 2012

У меня есть сборка с кодом C ++ / CLI, на которую я хочу сослаться в моем проекте модульного тестирования.MSTest говорит:

Test method  Grafik.Implementation.Tests.MappingHelperTests.GetMappedFeatures_OneMappedFeature_OneFeatureReturned threw exception: 
System.IO.FileNotFoundException: Die Datei oder Assembly "Graphic.Interface.Managed.dll" oder eine Abhängigkeit davon wurde nicht gefunden. Das angegebene Modul wurde nicht gefunden.

Я активировал протокол Fusion Assembly-Binder.И это говорит о том, что привязка была в порядке:

LOG: Die Bindung war erfolgreich. Assembly wird zurückgegeben von C:\xyz\Grafik.Tests\bin\x86\Debug\Graphic.Interface.Managed.dll.
LOG: Die Assembly wird im default-Load-Kontext geladen.

Кто-нибудь знает, что здесь не так?Платформа x86.Заранее спасибо!

1 Ответ

1 голос
/ 25 июня 2012

Скорее всего, ваша сборка ссылается на какую-то DLL, которую невозможно найти в пути поиска. Если код C ++ / CLI содержит «дополнительные зависимости», соответствующие DLL должны быть скопированы в выходной путь вашего проекта модульного теста, который ссылается на сборку с кодом C ++ / CLI.

Просмотрите свойства проекта вашего C ++ / CLI-проекта, на который ссылается ваш проект модульного теста. Перейдите в свойства «Linker / Input». Если в разделе «Дополнительные зависимости» указаны файлы LIB, убедитесь, что соответствующие библиотеки DLL присутствуют в выходном пути вашего проекта модульного тестирования.

К сожалению, протокол связывателя сборки fusion по-прежнему сообщает об успешной загрузке сборки, если не удается загрузить библиотеки C ++, на которые есть ссылки.

...