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

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

DCOM


VaS ©   (2002-12-19 16:02:00) 

Ситуация: связываюсь с моим СOM-сервером локально - все ОК. С другими серверами по сети - все ОК. С моим сервером по сети - облом ("Ошибка сервера" в CoCreateInstance(). При этом экземпляр ко-класса даже не создается). На обоих компах имеется exe-шник сервера, зарегистрирован. Используются некоторые интерфейсы, прокси-dll которых имеются и зарегистрированы на клиенте и сервере, также type library в exe-шнике. Другие сервера, использующие эти интерфейсы, работают нормально. Переворачивание клиент-сервер дает тот же результат. DCOM настроен. Прав хватает.
Просто не пойму куда еще копать.


VaS   (2002-12-20 10:30:00) [1]

Dok_3D: Смотрел хорошо. GUID-а не было тоже. Хелпстринг не пустой.
Набережных С.: !!!!!!!!!!!!!! С меня 2 вагона пива :))
Была ошибочка в доп. регистрации (помимо той, которую делает ComObjectFactory), связанной с OPC, что обуславливало отсутствие в dcomcnfg записи о сервере. + Олицетворение :))) + запуск под указанным пользователем.
В общем - выручил очень сильно. Спасибо.


Dok_3D   (2002-12-20 06:17:00) [2]

2VaS ©
>а его-то и нету в списке.... (!) Как это может быть???

Да есть запись в dcomcnfg. Просто плохо смотришь.
Список приложений формируется по helpsring в IDL-описании класса. Видимо, у тебя helpsring пустой.
И в список должен был попасть GUID твоего класса. Смотри лучше.


VaS   (2002-12-19 23:02:00) [3]

ОК, сэнкс большой, завтра все проверю, о результатах доложу ;)


Набережных С.   (2002-12-19 22:41:00) [4]

>VaS © (19.12.02 22:28)
>а его-то и нету в списке.... (!) Как это может быть???
AppID в реестре отсутствует. Вообще-то dcomcnfg должна автоматом добавлять, но лучше на это не рассчитывать и добавлять самому.

>Пользователь клиента на сервере прописан с правами админа.

Один хрен, у него своя станция и он из нее ни черта не увидит - потому и нет сервера в десктопе. Активируй под фиксированной записью и имперсонируй. А другие пути геморройные и со многими ограничениями.


VaS   (2002-12-19 22:28:00) [5]

Пользователь клиента на сервере прописан с правами админа. В dcomcnfg все всем разрешено. Уровень проверки подлинности - нет, уровень олицетворения - "определить". Полез посмотреть настройки самого сервера - а его-то и нету в списке.... (!) Как это может быть??? Может все беды от этого?
Ну и непонятно, что доступ к другим серверам, реализующим те же самые интерфейсы (OPC), работают отлично...
Но, главное, не понятно - где же запись насчет сервера в dcomcnfg? :-\


Набережных С.   (2002-12-19 22:10:00) [6]

Короче, конкретно разбирайся с настройками безопасности.


Набережных С.   (2002-12-19 22:07:00) [7]

>asmith (19.12.02 21:50)

Да я посмотрел, что за ошибка:) Обычно она возвращается, когда локальный SCM(в данном случае - тот, что на сервере) не может найти сервер. Однако иногда она же приходит, если сервер не почему-либо(например, из-за сбоя при инициализации) не зарегистрировал нужную фабрику. Потому и спросил.

>VaS © (19.12.02 21:58)

какая учетка активации? Подключившийся юзер?


VaS   (2002-12-19 21:58:00) [8]

ХМ! Тут очень странное поведение. Если уже запущен, то вылетает та самая ошибка. Если же не запущен, то на сервере возникает процесс (в виде нужного exe в диспетчере задач). Нормально создаются сом-объекты и запрашиваются у них интерфейсы. Но сам сервер (в виде десктопного приложения) не появляется и не загружается конфигурационный файл (загрузка должна происходить в OnCreate гл. формы), без которого использовать сервер смысла нет.


asmith   (2002-12-19 21:50:00) [9]

>Набережных С.
>Сервер запускается?
Именно, ошибка с кодом 80080005 - Server execution failed


Набережных С.   (2002-12-19 21:39:00) [10]

Сервер запускается?


VaS   (2002-12-19 21:15:00) [11]

win2000pro+SP3 свежеустановленный


VaS   (2002-12-19 21:14:00) [12]

Ошибка -2146959355. COM+ не используется. Все ком-объекты - наследники TComObject, библиотеки типов нет. Если это внесет ясность - это OPC-сервер.


asmith   (2002-12-19 20:47:00) [13]

Приведенной информации явно недостаточно - какую конкретно ошибку возвращает CoCreateInstance, используется ли СОМ+?


VaS   (2002-12-19 19:44:00) [14]

han_malign: Сэнксъ.
Up.


han_malign   (2002-12-19 17:08:00) [15]

Честно говоря не знаю как и кем для DCOM транспорты пишутся(слышал гром - да не знаю где он), но попробу покопать в этом направлении.


VaS   (2002-12-19 16:56:00) [16]

up


Наверх

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