Windows 7 Stop / Start Services - PullRequest
       15

Windows 7 Stop / Start Services

0 голосов
/ 20 июля 2011

У меня есть приложение, которое останавливает / запускает службы, только если оно запускается от имени администратора.

Можно ли остановить / запустить службы из приложения, работающего от имени обычного пользователя? Конечно, это так? Я пробовал все различные комбинации флагов доступа в моем вызове :: OpenService (), но я не могу получить действительный дескриптор. Если я использую SERVICE_INTERROGATE, я получаю верный дескриптор, но тогда я не могу вызвать :: ControlService (), чтобы остановить / запустить службу. Если я укажу SERVICE_PAUSE_CONTROL, я получу дескриптор NULL.

Я действительно являюсь владельцем приложения-службы. Что мне нужно сделать с приложением-службой, чтобы изменить требования безопасности?

Обновление: я обнаружил, что могу использовать приведенный ниже код, чтобы изменить настройки безопасности для моей службы. Единственная проблема сейчас заключается в том, что мне нужно сказать, если конкретное имя пользователя. Кто-нибудь знает, есть ли способ, которым BuildExplicitAccessWithName () может предоставить доступ ВСЕМ пользователям?

BuildExplicitAccessWithName (& ea, TEXT ("GUEST"), SERVICE_START | SERVICE_STOP | READ_CONTROL | УДАЛЯТЬ, SET_ACCESS, NO_INHERITANCE);

Приветствие Пол

1 Ответ

0 голосов
/ 08 сентября 2011

Все отсортировано - я использовал "Все", и это сделало свою работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...