Не загружается ссылка из сборки на сборку из ресурсов

290
09 февраля 2018, 18:04

Извиняюсь за туфтологию, но в общем то проблема примерно так и выглядит...

Есть приложение, которое ссылается на 3 сборки (назовём их Assembly1, Assembly2, Assembly3 оформлены как "библиотека классов") все они также встроены в главное приложение как embedded resource и подгружаются при запуске через AppDomain.CurrentDomain.AssemblyResolve += {...}.

Всё было хорошо, до тех пор, пока Assembly3 не стала ссылаться на Assembly2. После этого главное приложение перестало запускаться если не подкинуть вручную Assembly2 в основной каталог. (вылетает APPCRASH с KERNELBASE.dll)

UPD:

В общем то удалось решить таким образом, хоть самой сути вроде и не решает. Главная точка входа программы выглядела примерно таким образом:

...
using Assembly2;
        [STAThread]
        static void Main()
        {
            AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(ResolveEventHandler);
            Assembly2.Method1();
            ...
    }

Проблема ушла после того Assembly2.Method1() перенёс из точки входа в код инициализации главной формы приложения...

Answer 1

Была у меня такая же ситуация. Так ничего и не смог сделать. Лучше всего переработать код, избавившись от таких сложных и циклических ссылок. А то еще неизвестно, как это аукнется...

READ ALSO
C#. WepApi для desktop программы (WPF или WinForms)

C#. WepApi для desktop программы (WPF или WinForms)

Здравствуйте хотел спросить как организовать HTTP WepApi доступ к приложению на WPFНеобходимо реализовать контроль состояния объекта (GET запросы...

281
Счетчик с очередью

Счетчик с очередью

Реализовывал счетчик задач с очередью, но возникает timeout на последней пачке запросов, клиент ожидает и соединение разрываетсяСкорее всего...

289
Работа с gridView в asp.net

Работа с gridView в asp.net

ЗдравствуйтеЕсть на странице gridView

295
Когда и для каких целей может потребоваться использовать контекст потока?

Когда и для каких целей может потребоваться использовать контекст потока?

У потока может быть контекст(GUI приложение), а может и не быть(Консольное приложение)

264