Одно слово предупреждения (публикация в качестве ответа, чтобы я мог получить необычные ссылки и для длины): Сервисы, которые открывают пользовательский интерфейс, в основном представляют собой дыры в безопасности, ожидающие своего использования (поиск " shatter attack " для Дополнительная информация). Вот почему в Windows Vista и за ее пределами службы не могут отображать пользовательский интерфейс на рабочем столе (службы запускаются в сеансе 0, интерактивный пользователь запускается в сеансе 1).
Что еще более важно, в Windows XP есть несколько сценариев, в которых ваше приложение не будет работать: если на компьютере одновременно зарегистрировано несколько пользователей (быстрое переключение пользователей) или если это компьютер с сервером 2003, работающий с роль сервера терминалов, ваш пользовательский интерфейс не будет отображаться в сеансе интерактивного пользователя.
В этой статье рассказывается о проблеме изоляции сеанса 0 и о том, как ее обойти.