Мой exe-файл отлично работает сам по себе, но ничего не делает при загрузке службой
-
21-08-2019 - |
Вопрос
Простой exe-файл для значка в трее, который отлично работает независимо
Я вызываю это с помощью службы Windows, и кажется, что она запускается (в диспетчере задач), но, похоже, она не выполняет никакого кода.т. е. нет значка в трее и т.д.
Решение
В Vista и Windows 2008 службы запускаются в сеансе, отличном от пользовательского - любой EXE-файл, который запускает служба, будет запускаться в том же сеансе, что и служба.Перед запуском Vista вам необходимо установить флажок "Разрешить службе взаимодействовать с рабочим столом", в противном случае применяется то же самое.
Это означает, что ваш EXE-файл с иконкой в трее не может взаимодействовать с рабочим столом пользователя.Вам нужно посмотреть на использование CreateProcessAsUser для запуска EXE-файла в правильном сеансе.
Это сообщение в блоге предназначен для людей, использующих развертывание ConfigMgr OS, но содержит хороший список шагов, необходимых для запуска процесса в другом сеансе.Есть несколько неочевидных шагов, которые вам нужно предпринять, иначе что-то странным образом не получится.