Форум: "Corba";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];
ВнизЗадержка при создании com обьекта Найти похожие ветки
← →
BKV (2005-04-26 13:24) [0]Всем доброго времени суток.
Как при создании СОМ сервера не возвращать управление до тех пор, пока он полностью не инициализируется?
Например.
Есть программа (.exe).
К ней добавлен СОМ обьект.
Из внешней программы создается этот СОМ обьект:
COMApp := TCOmApplication.Create(self)
Это происходит мгновенно. Запускается Out-of-process сервер и возвращается необходимый СОМ обьект.
А необходимо вернуть созданный СОМ обьект только после того как запущенный COM server полностью проинициализирует себя.
Как это сделать?
Заранее благодарен
← →
msgipss (2005-04-29 20:17) [1]Да аналогичная проблема, приложение сервис win32 имеет com сервер. И при запуске сервиса, происходит инициализация. Если же сервис остановлен и сервер com вызывают клиенты, как сделать чтобы происходил запуск сервиса или же если сервис не запущен (не прошла инициализация) не запускать данный com сервер ?
← →
Набережных С. © (2005-05-03 14:10) [2]
> BKV (26.04.05 13:24)
> необходимо вернуть созданный СОМ обьект только после того
> как запущенный COM server полностью проинициализирует себя.
Так оно и происходит. Сначала подсистема СОМ запускает сервер, тот полностью инициализируется, регистрирует свои фабрики классов. Только после этого COM может создать затребованный клиентом объект, получить у него интерфейс и передать его клиенту. Т.е. к моменту получения клиентом интерфейса сервер полностью проинициализирован. Если тебе необходимо что-то сделать при запуске или создании объекта, то и размещай свой код или в секции инициализации, либо в конструкторе объекта или его методе Initialize, если такой есть.
> msgipss (29.04.05 20:17) [1]
Имхо, только созданием вспомогательного сервера, который следит за состоянием основного. При этом права на запуск основного будут только у дополнительного. Примерно так, конкретные сценарии можно разные придумать
Страницы: 1 вся ветка
Форум: "Corba";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c