Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Направления программирования
>
Техно
> Тема:
Как освободить СОМ сервер в VB.
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Как освободить СОМ сервер в VB. (Прочитано 8656 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PSD
Главный специалист
Offline
Пол:
Как освободить СОМ сервер в VB.
«
:
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
Гость
Как освободить СОМ сервер в VB.
«
Ответ #1 :
08-10-2003 07:24 »
Никак. Пока работает клиент, COM объект загружен в его адресное пространство(если через proxy/stub, то твой объект загружен COM runtime) и пока он не освободит все интерфейсы, физически заменить dll нет возможности.
Записан
PSD
Главный специалист
Offline
Пол:
Как освободить СОМ сервер в VB.
«
Ответ #2 :
08-10-2003 07:48 »
Так втомто и проблема что это единственный вызов.
Я создал вустой проект с одной формой поставил одну кнопку и подней написал этот код.
По нажатию создается объект, вызывается метод, и закрывается ссылка на объект.
По идее после этого объект должен быть разрушен а библиотек выгружена или не так?
Записан
Да да нет нет все остальное от лукавого.
NetRaider
Гость
Как освободить СОМ сервер в VB.
«
Ответ #3 :
08-10-2003 07:52 »
Не совсем так. По умолчанию неиспользуемые dll будут выгружены через 10 мин(где-то в реестре указано) после освобождения всех интерфейсов. Это сделано для повышения производительности. Можно из клиента вызвать CoFreeUnusedLibraries после освобождения всех интерфейсов.
Записан
PSD
Главный специалист
Offline
Пол:
Как освободить СОМ сервер в VB.
«
Ответ #4 :
08-10-2003 10:41 »
Ясно.
Записан
Да да нет нет все остальное от лукавого.
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Направления программирования
>
Техно
> Тема:
Как освободить СОМ сервер в VB.
Загружается...