Вызов деструктора класса при обнулении реализуемого интерфейса. Как этого избежать???
Всем доброго времени суток! Вообщем случилась такая проблема:
пишу программу с поддержкой плагинов. "Общение" между программой и dll осуществляется посредством интерфейсов. Т.е. dll и exe имеют общий файл с описанием интерфейсов. В экспортируемую процедуру из dll передаются ссылки на интерфейсы реализованные в приложении, и возвращаются ссылки реализованные в dll, в общем аналог CallBack процедур. Все хорошо если бы не одно "но". Как только я делаю FreeLibrary
загруженной библиотеки, у меня не стого не с сего вызывается деструктор класса в котором реализован интерфейс переданный в dll. Я так понимаю, что когда память занимаемая библиотекой освобождается, автоматически переданному интерфейсу приложения присваивается nil, что и приводит к вызову деструктора. Как это можно побороть?
Заранее спасибо!
|