указатель на таблицу виртульных функций и DLL
От: seafresh  
Дата: 14.11.06 12:57
Оценка:
есть DLLf в которой периодически создаются объекты ClassA и его производных.
В самом ClassA и его производных есть виртуальные функции, в частности деструктор.
Проблема возникает когда DLLf выгруженна из памяти (периодически и это происходит).
Если в этот момент вызывать виртуальные функции объекта, который был создан в DLLf (а объекты данного типа создаются в том числе и самим приложением, и другими DLLx) происходит исключение [доступ по чтению], т.к. таблицы уже не существует. Перенос реализации ClassA и его производных в обособленную DLLs проблемы не решает.
В качестве решения я вижу только определение типа производного класса, создание локальной копии самими приложением и удаление полученного объекта при гарантированном присуствии, в адресном пространстве, DLLf, которая его породила.
Если есть другие варинаты с удовольствием выслушаю.
Государство должно защищать свободу и право, в этом его оправдание.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.