Я создал службу Windows на C# и Windows Server 2003. Я хотел бы, чтобы моя служба могла запускать exe-файл, который является приложением Windows Form. Когда я запускаю службу - она запускает другое приложение, но я не вижу его. Когда я открываю диспетчер задач - я вижу, что приложение работает, но я просто не вижу его. Я проверил «Разрешить службе взаимодействовать с рабочим столом», но ничего не происходит. Пожалуйста помоги. Можно ли запустить и выполнить exe из службы windows и посмотреть, как exe работает на сервере widnows 2003?Запуск exe из службы Windows, которая взаимодействует с рабочим столом пользователя
0
A
ответ
5
Отображение пользовательского интерфейса с помощью службы Windows очень проблематично, поскольку служба может работать на другом рабочем столе от пользователя (а на Vista/Server 2008 фактически будет работать на другом рабочем столе).
Простейшим решением является запуск пользовательского интерфейса не непосредственно из службы, а из приложения, запущенного на рабочем столе пользователя (возможно, для запуска при входе в систему), который каким-то образом связывается с сервисом.
Только помните:
- Там может быть не вошедшего пользователя
- Там может быть несколько зарегистрированных пользователей с помощью быстрого переключения пользователей или удаленного рабочего стола
- приложение на рабочем столе пользователя работает в контекст безопасности пользователя, а не службы
Ответы на вопросы. Возможно, добавьте рекомендацию о том, как установить связь между службой и настольным приложением. – Ken 2008-10-07 12:21:32