Как побороть GUID ???
От: stalk  
Дата: 28.05.07 10:17
Оценка:
Всем привет!

Наступил на грабли .NET. Ситуация такая.

Есть большая СИСТЕМА — приложение, написанное на C#. В одном солюшине много проектов ну и т.д. Хочется сделать плагинную систему, чтобы другие люди писали плагины (dll-ки) и использовали их в приложении. Для этого были взяты классы и интерфейсы из разных проектов этого солюшена и сделаны стабы по ним. Стабы это когда мы выкидываем код, заменяя его на return или return null или return (какое-нибудь значение примитивного типа); Т.е. у нас от классов остается только скелет. Так вот, все эти стабы подсовываем пользователю в качестве одной dll. Он ее использует для того, чтобы просто скомпиляться. Т.е. если ему необходимо имплементить интерфейс — берет его из стабов.. Нужен внутренний логгер, ссылается на класс из стабов..

Все замечательно. НО! Когда загружаю скомпиленную библиотечку в приложении он мне пишет, что существуют два интерфейса (назовем их IPlugin) с разными гуидами.. Меня это сильно расстроило.. Как джава разработчик я на такие грабли еще не наступал.. Прописал для этого интерфейса гуид руками.. в приложении и в стаб библиотеке (один и тотже есесно). НО.. все равно не может скастить зараза.. Господа, подскажите как мне быть в такой ситуации.

Как вариант можно сделать отдельную библиотеку, которой пользуются и приложение и разработчики плагинов — но это бы очень не хотелось.. Ибо придется городить туда много чего (логгеры, интерфейсы одни, интерфейсы другие и т.д) или поставлять кучу dll в SDK для плагинов.. этого бы тоже не хотелось.. Спасибо. Жду Ваших советов
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.