Мой exe работает нормально, но ничего не делает при загрузке службой - PullRequest
1 голос
/ 10 декабря 2008

Простой exe для иконки в трее, который отлично работает независимо

Я называю это с помощью службы Windows, и кажется, что она запускается (в диспетчере задач), но, похоже, не выполняет какой-либо код. т.е. нет иконки в трее и т. д.

1 Ответ

6 голосов
/ 10 декабря 2008

В Vista и Windows 2008 службы запускаются в сеансе, отличном от пользователя - любой EXE-файл, запущенный службой, будет запущен в том же сеансе, что и служба. Перед Vista необходимо установить флажок «Разрешить службе взаимодействовать с рабочим столом», в противном случае применяется то же самое.

Это означает, что значок EXE на панели задач не может взаимодействовать с рабочим столом пользователя. Вам нужно взглянуть на использование CreateProcessAsUser для запуска EXE в правильном сеансе.

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

...