Служба не может создать новую программу, если она не запущена под учетной записью локальной системы. - PullRequest
0 голосов
/ 20 февраля 2011

Прежде всего, я не уверен, является ли это общим для сервисов в целом, но проблема, с которой я сталкиваюсь, довольно специфична, она связана с компонентом сервиса SageTV.

Поскольку на форумах SageTV нет особой помощи по этому конкретному вопросу, я подумал, что, возможно, это общая проблема со службами, и поэтому стоит задать ее здесь, в Stackoverflow.

Вот так:

Я запускаю службу Windows SageTV с активированным плагином, который должен выполнять внешние программы. При работе под учетной записью локальной системы (с включенной опцией «Взаимодействовать с рабочим столом») это работает нормально. В целях тестирования я использую notepad.exe в качестве программы для выполнения.

Затем я создал нового пользователя (назовем его mediabrowser) и изменил сервис SageTV, чтобы он работал как этот пользователь. Когда я это делаю, плагин SageTV больше не запускает блокнот. Он просто ничего не делает, я не получаю никаких ошибок или чего-то еще, просто ничего не происходит, когда должен выполняться блокнот.

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

Это общая проблема со службами? Если да, какие разрешения могут понадобиться моему пользователю медиабраузера, чтобы это работало? Я почти уверен, что это из-за различий в разрешениях между моим пользователем медиабраузера и учетной записью локальной системы.

Заранее спасибо ...

1 Ответ

0 голосов
/ 20 февраля 2011

Уххх ОК. Теперь я чувствую себя идиотом. Я только что запустил tast manager на машине и вижу, что под пользователем mediabrowser существует множество процессов notepad.exe, поэтому я предполагаю, что блокнот выполняется правильно. Это просто не отображается на рабочем столе.

Так что я думаю, это просто работает: -)

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