Re[2]: Запрет выгрузки dll до момента освобождения последнег
От: Aniskin  
Дата: 25.10.18 21:26
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>Похоже на какой-то косяк при подсчете ссылок


Если бы был косяк с подсчетом ссылок на моей стороне, то объект просто бы терялся и была бы утечка памяти. Проблема возникает при OleUninitialize, т.е. (предполагаю что) COM освобождает ссылку на мой объект в то время как dll уже выгружена.

bnk>как именно ты реализовал WM_GETOBJECT/IAccessible


Стандартно:

Accessible := TTreeViewAccessible.Create(Self);
Result := LresultFromObject(IID_IAccessible, WParam, Accessible);

bnk>Когда система хочет выгрузить DLL, она ее предварительно спрашивает, "можно ли"? (DllCanUnloadNow)?


У меня же не COM сервер, и dll загружена не COM системой. COM вообще ни чего не знает о моей dll.

bnk>К сожалению, я в Delphi не в зуб ногой, как починить, посоветовать не смогу.


Дело в общем то не в Delphi. То, на чем написана dll, к моему вопросу имеет весьма косвенное отношение.
Отредактировано 25.10.2018 21:40 Aniskin . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.