2012-06-14 2 views
0

Привет, ребята (и gals) У меня возникла проблема с использованием Assembly GetExportedTypes() в .NET 4.0. Тот же код отлично работает в проекте, ориентированном на более старую версию .NET.Assembly.GetExportedTypes() не работает в .NET 4.0 (тот же код работает в версии 3.5)

Примечание: * код работает для местных собраний, но при попытке открыть их сетевой диск не работает, то есть моя проблема ... Она смотрит на нагружать сборку, но она утверждает, что его не может найти его при использовании GetExportedTypes(). Опять же, если я открываю DLL с моей машине это работает, эта ошибка возникает только с DLL, расположенных на сетевых дисках *

EDIT: Ошибка генерируется на GetExportedTypes

Кодекс:

 Assembly assembly; 
     Type[] t; 

     assembly = Assembly.LoadFrom(dllPathOpenFileDialog.FileName.ToString()); 

     t = assembly.GetExportedTypes(); 

Ошибка: не удалось загрузить файл или сборку '* ..* **. *** . ****, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null или одна из его зависимостей. Система не может найти указанный файл.

(я использовал звездочки, чтобы скрыть личную информацию - имя файла)

+0

Используйте Fuslogvw.exe для устранения неполадок с разрешением сборки. –

+0

Спасибо за подсказку, выяснили проблемы – user1145927

ответ

0

Путь некоторых политики безопасности обрабатываются был изменен в .NET 4.0. This article должен предоставить некоторый фон.

+0

Я должен был упомянуть, у меня есть: в моей конфигурации, я также попробовал несколько других вещей, упомянутых в этом сообщении. Перед тем, как это сделать, ошибка заключалась в том, что мне нужно было добавить это в мою конфигурацию, чтобы дать ей все в порядке. Теперь, когда я сделал это, я получил ошибку, показанную выше. – user1145927