Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DCOM: как запустить в сети? [C++ Builder, Windows]


Temik ©   (2003-12-19 00:57:00) 

Помогите новичку.
Создал на основе Type Library DCOM приложение. на моей машине запускается нормально. в dcomcnfg вижу только свою typeLibrary, а exeшника сервера нет. Нормально ли это?
При запуске в сети клиент не видит сервера, выдает ошибку "Класс не зарегистрирован", "Нет доступа", и т.п. Как это исправить?
Где находится функция регистрации сервера, и что в ней должно быть?
При попытке создать на основе сервера COM+ приложение, получаю ошибку "Неправильный указатель" при экспорте, или "Ошибка DllRegisterServerпри установке компонента" при установке компонента из exe.
Дайте пример несложный, если не трудно.


OlehM   (2004-02-18 16:02:00) [1]

для того чтобы ты мог запустить сервер на удаленной машине на клиете ты должен зарегестрировать библиотеку классов TLB. Самый простой вариант это на клиенте выполнить  Server_Name.exe/register, Server_Name.exe /unregister если хочеш програмным методом разбери код: C:\Program Files\Borland\Delphi5\Demos\Activex\Tregsvr\ прога которая регестрирует библиотеку классов.


Dok_3D   (2004-02-16 16:52:00) [2]

Попробуй в клиенте и на сервере выполнить следующие команды:
CoInitializeEx(nil,COINIT_APARTMENTTHREADED );
CoInitializeSecurity(nil,-1,nil,nil,1,2,nil,4,nil);


Вот только не надо на CoInitializeSecurity на cервере запускать :))). Я вас очень прошу. :))


AlexA   (2004-02-12 17:31:00) [3]

Запускал сервер-приложений на сврем компе? :)
Он зарегистрировалься. Теперь пытаеться клиент подцыпиться к заркгистрированому не локальной машине.. По-крайней мере я так думаю... Сам новичек.. Может мастера скажут правильно..
Лечиться так :
"Имя_сервака".exe /unregserver
Если конечно,я все правильно понял :)


just me   (2003-12-19 16:42:00) [4]

> При запуске в сети клиент не видит сервера, выдает ошибку "Класс не зарегистрирован"
Нужно зарегистрировать нп клиенте библиотеку типов сервера, например однократно запустить сервер на клиентской РС
>При попытке создать на основе сервера COM+ приложение
Неверно, для регистрации в COM+-каталоге нужно строить сервер не на основе .exe, а на основе .dll (in-proc server), а среда COM+ "завернет" твой сервер в некий суррогатный процесс и запустит


Awod   (2003-12-19 14:52:00) [5]

Попробуй в клиенте и на сервере выполнить следующие команды:
 CoInitializeEx(nil,COINIT_APARTMENTTHREADED );
 CoInitializeSecurity(nil,-1,nil,nil,1,2,nil,4,nil);


Наверх

Титульная страница Поиск, карта сайта Написать письмо