Вопрос

Я пытаюсь использовать метод servicecontroller.getservices (), чтобы получить список всех услуг.В приложении консоли он работает нормально, но я получаю пустой список, если я позвоню этот метод в службе Windows.Это, кажется, проблема аутентификации, но я использовал все варианты аккаунта (локальная система, локальная служба, сетевой сервис, пользователь [который является локальным администратором]), не повезет.

Есть ли какие-либо предложения?

Спасибо

Это было полезно?

Решение

согласился, это должно быть выпуск привилегированной учетной записи пользователя.Перечисление необходимо начать, позвонив на местную функцию API OpenSCManager ().Это очень привилегированная функция, Docs SDK отмечает, что доступом администратора требуется.Вам придется настроить службу и дать ему вход администратора.Похоже, вы уже пробовали это.Не беспокоитесь о UAC, а затем задайте больше вопросов об этом на ServerFault.com, предполагаемый домом экспертов по безопасности.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top