SuperMiQi Ответов: 1

[Справка] com-сервер exe и клиентская проблема потребителя, основанная на привилегии запуска.


Всем Привет,

Я нахожусь перед проблемой, связанной с доступом к исполняемому файлу com-сервера через автономный клиент потребительского приложения.
Позвольте мне объяснить вам подробнее:

Если я создаю автономный com exe-сервер через, например, VB6 activex exe project mode и клиент, потребляющий объект через getobject / createobject. Клиентское приложение может ссылаться на опубликованный объект счастливо, когда они загружаются с правами пользователя или администратора.

WorkingConfig.ПНГ


Когда я запускаю сервер в режиме администратора, то клиент получает в качестве кода возврата от getobject или createobject: "класс не зарегистрирован", HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG.

NotWorkingConfig.ПНГ


Заранее благодарю вас за любые ваши предложения.
С уважением.
Мики.

Что я уже пробовал:

Основываясь на исследованиях, я обнаружил инструмент для изменения привилегии запуска:

Привилегия запуска

Это можно установить с помощью инструмента:
dcomcfng.exe

Я пробовал это решение, но не исправил проблему, я все еще получаю класс, не зарегистрированный.

В чем может быть причина ? Как разрешить разрешение на доступ к объекту ?
Как поступить, чтобы позволить потребителю через getobject получить доступ к ссылке idspatch публичного объекта ?

Я приложил примеры файлов для изучения моего запроса:
vb6exe.zip

OutofProcessCOM.zip

1 Ответов

Рейтинг:
0

Dave Kreskowiak

Если вы запускаете повышенный процесс, он работает внутри песочницы, где не повышенный код не может добраться до него.

Либо оба ваших процесса должны работать с повышенными правами, либо они оба должны работать без повышенных прав.

Почему? Эксплойты безопасности.