Программа работает с приложением стороннего разработчика (ПСР), цепляясь к ней через его же DLL.
DLLLib oDLL = new DLLLib();
//После использования
//Отписка от всех событий. Программа использует несколько.
oDLL.Unsubscribe();
//и под завязку
oDll = null;
Программа пишется, и потому все время останавливаем, редактируем, запускаем снова.
Беда в том, что после завершения и повторного запуска программы, ПСР перестает выдавать события. Нужно ПСР перезапускать, и только тогда все ОК. При завершении ПСР пишет, что оно подсоединено к активному COM-объекту.
Что делать, чтобы моя прога при завершении освобождала DLL? Никаких методов типа Dispose() или Finalize() в DLL нет.
"Есть многое на свете, друг Горацио, что и не сразу в голову придет."
М. Твен "Приключения Геккельбери Финна"