Я использую (и ссылаюсь на) две сторонние библиотеки DLL (a.dll и b.dll) в двух своих приложениях C #. Я получаю повторяющуюся проблему, когда оба приложения зависают при вызове функции из сторонней библиотеки.
Я попытался сделать копию a.dll и b.dll (a2.dll и b2.dll) и использовать ее во втором приложении, но оказалось, что a.dll ссылается на b.dll, anb на b.dll ссылки a.dll, и он не загружается должным образом.
Подозреваю, что есть тупик но в сторонней библиотеке. Я не могу использовать блокировку, чтобы предотвратить это. Каждое приложение применяет блокировку, чтобы гарантировать, что это приложение имеет только один поток, обращающийся к библиотеке за раз, но я не могу заблокировать обе программы.
Итак, мой вопрос: как я могу решить эту проблему?
Могу ли я сказать ОС (Windows XP), что я не хочу, чтобы DLL использовалась совместно?
Спасибо, Джо