Высота COM от сборки сетевого сервиса

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

Подключаемый модуль должен выполнять некоторые операции с повышенными правами, для которых мне нужно запустить управляемый COM-сервер с повышенными правами.

У меня есть доступ к коду подключаемого модуля, а также к коду COM-сервера.

Мое требование состоит в том, чтобы сделать запуск COM-сервера повышенным без запроса пользователя каким-либо образом. Сервер должен быть запущен по требованию и завершен после завершения работы.

Если кто-то может помочь мне с тем, как это может быть достигнуто, это поможет. Благодарю.

Если во время установки требуются какие-либо изменения, это можно сделать.

PS: я узнал о "COM Elevation Moniker", но похоже, что он помогает вызвать диалог повышения UAC, который не соответствует моим требованиям.

1 ответ

Решение

Поскольку у вас есть доступ к COM-серверу, я бы рекомендовал установить его как приложение COM+.

После установки в качестве приложения COM+ вы можете установить учетную запись приложения для учетной записи, которая необходима для выполнения операций.

Оттуда, предполагая, что COM-компонент установлен на том же компьютере, что и код, который вы запускаете, вы сможете получить доступ к COM-компоненту в.NET таким же образом, как CoCreateInstance будет знать, что COM+ перехватывает реализацию.

Другие вопросы по тегам