Win2000, приложение пропало из списка dcomcnfg
От: mr_ded Россия  
Дата: 10.08.07 16:08
Оценка:
Хай, достопочтимый олл!
Есть проблема.
Условия:
1. ОС Win2000;
2. архитектура сети доменная;
3. есть COM сервер реализующий стандарт OPC DA
(Ole for Process Control DataAccess);
4. COM сервер хорошо работает на локальной машине
(все тесты проходят, клиент подключается и имеет
доступ к интерфейсам сервера);
5. подключение с удалённой машины через DCOM
___ранее___ удавалось настроить через dcomcnfg
и оно тоже хорошо работало;
6. сервер разрабатываю я сам, и соответственно
периодически его переустанавливаю (соответственно
с удаление и добавлением ключей реестра).

Проблема:
некоторое время назад обнаружил, что из dcomcnfg
пропало моё приложение!
Раньше было а теперь просто отсутствует в списке приложений.

После этого стал проверять и искать в чём проблема.
Первым делом реестр:
а. CLSID присутствует;
б. AppID присутствует.
Всё должно работать.
CLSID:
{DEF2F8B7-3603-11D4-BB5D-00001CD7661D}

После долгих изысканий и экспериментов выяснил удивительную вещь:
Если в CLSID изменить первый символ на 'F' ({FEF2F8B7-3603-11D4-BB5D-00001CD7661D}),
то приложение пояляется в dcomcnfg!.
Если меняю обратно, то пропадает.

Пробовал ещё на 3-х машинах в этом же домене.
То есть устанавливал своё приложение на них.
На одной приложение появлеятся в списке dcomcnfg
на двух других нет.

Помогите пожалуйста разобраться в чём может быть дело.
Я зашёл в тупик, облазил инет в гугле.
Пытался найти, где может запоминаться CLSID.
Пробовал искать CLSID по всей машине.
Прошерстил реестр на предмет поиска "{DEF2F8B7-3603-11D4-BB5D-00001CD7661D}"
не нашёл ничего особенного.

Нашёл только одну интересную вещь:
смотрел через regmon, к каким ключам обращается dcomcnfg
во время запуска.
И оказалось, что до ключа {DEF2F8B7-3603-11D4-BB5D-00001CD7661D}
он даже не доходит!
Возможно это чем-то поможет...
Re: Win2000, приложение пропало из списка dcomcnfg
От: thrasher Россия http://BasisPlatform.ru
Дата: 17.08.07 08:16
Оценка:
Здравствуйте, mr_ded, Вы писали:

Не уверен, что dcomcnfg шерстит реестр, а не использует какие-то механизмы SCM.
А как у тебя происходит регистрация?
Если не кодом визарда, то надо всетаки проверить, вдруг ошибка офографическая в GUID.
Но если все стандартно (к тому же ты говоришь, что где-то все же регистрируется нормально) и тем не менее косяк имеет место, я бы просто сгенерил новый GUID.
Re[2]: Win2000, приложение пропало из списка dcomcnfg
От: mr_ded Россия  
Дата: 18.08.07 12:41
Оценка:
Спасибо за ответ.

>Не уверен, что dcomcnfg шерстит реестр, а не использует какие-то механизмы SCM.

я сделал вывод только исключительно потому, что regmon показывает, что
dcomcnfg стучится в реестр.
Отсюда я естественно и сделал такой вывод.

>А как у тебя происходит регистрация?

регистрация делается просто записью в реестр в соответствующие разделы.
Запись производится из инсталлятора, а не через какой либо программный интерфейс.

>Если не кодом визарда, то надо всетаки проверить, вдруг ошибка офографическая в GUID.

проверял, даже просто руками копировал .
ctr-ins, shift-ins.
В общем в орфографии я не нашёл у себя ошибок.

>Но если все стандартно (к тому же ты говоришь, что где-то все же регистрируется нормально)

>и тем не менее косяк имеет место, я бы просто сгенерил новый GUID.
да, генерация нового GUID помогает. Но есть проблема одна.
Уже существуют пользователи, у который установлен и работает этот сервер.
Периодически выходят новые релизы сервера и он обновляется у некоторых заказчиков.
Соответственно замена GUID может привести к некоторым проблемам.
Скорее всего придётся заново переподключать и привязывать клиенты
уже работающие, а это не очень хорошо.
Этого как раз бы и хотелось бы избежать.
Может подскажешь в каком направлении можно покопать, чтобы решить эту проблему?
Re[3]: Win2000, приложение пропало из списка dcomcnfg
От: thrasher Россия http://BasisPlatform.ru
Дата: 20.08.07 06:45
Оценка:
Здравствуйте, mr_ded, Вы писали:

Я еще покопаюсь, пока не могу предположить ни чего конструктивного. Импортни мне ключи реестра плз.

А пока могу предложить работу своего студента здесь , все, что мне надо было от dcomcnfg, он в своем классе реализовал, описание конечно не ахти, но есть демо на MFC.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.