Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как освободить СОМ сервер в VB.  (Прочитано 8665 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« : 08-10-2003 07:07 » 

Разрабатываю ATL библиотеку

тестирую из VB
Код:
Dim d As Object
Set d = CreateObject)"PSD_Lib.TPC_Edit":
d.Test
Set d = Nothing

Проблема втом что после выполнеия этого куска библиотека остается заблокированой(ее перекомпилить нельзя), пока не закроешь VB , как с этим бороться?
Как явно закрыть библиотеку?
Записан

Да да нет нет все остальное от лукавого.
Anonymous
Гость
« Ответ #1 : 08-10-2003 07:24 » 

Никак. Пока работает клиент, COM объект загружен в его адресное пространство(если через proxy/stub, то твой объект загружен COM runtime) и пока он не освободит все интерфейсы, физически заменить dll нет возможности.
Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 08-10-2003 07:48 » 

Так втомто и проблема что это единственный вызов.
Я создал вустой проект с одной формой поставил одну кнопку и подней написал этот код.

По нажатию создается объект, вызывается метод, и закрывается ссылка на объект.    

По идее после этого объект должен быть разрушен а библиотек выгружена или не так?
Записан

Да да нет нет все остальное от лукавого.
NetRaider
Гость
« Ответ #3 : 08-10-2003 07:52 » 

Не совсем так. По умолчанию неиспользуемые dll будут выгружены через 10 мин(где-то в реестре указано) после освобождения всех интерфейсов. Это сделано для повышения производительности. Можно из клиента вызвать CoFreeUnusedLibraries после освобождения всех интерфейсов.
Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 08-10-2003 10:41 » new

Ясно.
Записан

Да да нет нет все остальное от лукавого.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines