2013-02-15 2 views
1

Я пишу приложение, которое работает с плагинами. В основной программе я загружаю все плагины, ища интерфейс плагина в сборке.WPF плагин не распознан

Все мои плагины (VB.NET v4.0 и C# v4.0) на основе WPF будут распознаны, кроме одного. Этот плагин использует ResourceDictionaries, множество шаблонов и подкаталогов. Этот плагин написан на Visual Studio 2010 и Expression Blend 4 в C# на основе WPF 4.0.

Очень странно, потому что плагин распознается в основной программе. Но после нескольких тестов и сборки основная программа перестает распознавать плагин.

Я сделал резервную копию рабочего плагина и плагина, который больше не распознается. Файлы csproj практически одинаковы, а также настройки.

Я не могу найти решение, и google также не знает об этой проблеме.

Если найдена информация, то код XAML влияет на сборку, поэтому другие программы не могут ее распознать. Но особых сведений об этом нет, а также нет решения.

Кто-нибудь знает эту проблему и намного лучше - кто-нибудь знает решение?

+0

Можете ли вы разместить код, который показывает, как вы загружаете плагины? – tsells

+0

Я выяснил, в чем проблема. Плагин выбрал исключение, и плагин-менеджер проигнорировал плагин. Но теперь я сталкиваюсь с новой проблемой: если я пытаюсь создать экземпляр моего главного окна, отладчик выдаст исключение, что System.Windows.Interactivity.dll не найден. Отладчик говорит: (XamlParseException) Файл или сборка «System.Windows.Interactivity, PublicKeyToken = 31bf3856ad364e35» или зависимость не может быть найдена. Система не может найти файл. Если я запустил приложение как автономное (плагин имеет «Debug.xaml», который загружает плагин в режиме окна), все работает нормально. – 2013-02-15 03:04:32

ответ

0

Относительно ваш дополнительный комментарий (XamlParseException):

ли ссылки вы на System.Windows.Interactivity.dll в главном-проекте (который нагружает плагин) и в вашем Plugin-проекте?

+0

Я нашел проблему. Основная программа - startet в моей корневой папке. Все плагины расположены в корне \ plugins. Проблема была в том, что у меня была System.Windows.Interactivity.dll в папке плагинов, а не в корне. Мой коллеж решил проблему, потому что он написал основную программу. Но спасибо за вашу помощь :) – 2013-02-15 14:25:03

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