COM-объект в Service и Security

From
Demid ()
To
All
Date
2002-04-05T21:38:51Z
Area
SU.WINDOWS.NT.PROG
From: "Demid" <demid@pstu.edu>

Hi, People.

Пытаюсь создать COM-сервер в службе (в Delphi). Он создается и работает, но
подключиться к себе дает только тому пользователю, от имени которого
стартует служба. Даже не администраторам, что странно.
Через DCOMCNFG сконфигурировать безопасность этого объекта не получается -
его там нет (почему-то для этого приложения отсутствует AppID).
Пробовал сделать на сервере и на клиенте (на всякий случай)
    CoInitializeSecurity(nil, -1, nil, nil, RPC_C_AUTHN_LEVEL_NONE,
RPC_C_IMP_LEVEL_ANONYMOUS, nil, EOAC_NONE, nil);

Не помогло - никаких изменений. Больше никаких мыслей в голову не приходит.
Мне нужно, чтобы объект могли использовать все, независимо от имени
пользователя и наличия такового вообще. Соответствующие настройки для Local
server (это когда сервер в обычном EXE-файле) делаются с помощью DCOMCNFG
без труда.
Куда копать?

Еще деталь: установлено, что не получается не создание COM-объекта, а вызов
метода, т.е. CoCreateInstance отрабатывает нормально, а IDispatch.Invoke на
этом объекте отваливается с ошибкой "Критический сбой" (под Windows 2000 -
"Разрушительный сбой" :) ) Еще раз повторю - если запускаю службу от имени
того пользователя, под которым же пытаюсь и клиентское приложение
запустить - все работает как надо.


--- ifmail v.2.15dev5
 * Origin: Demos online service (2:5020/400)