Если ваша программа имеет пользовательский интерфейс, то она не должна запускаться как служба. Чтобы быть более точным, он не может работать как служба, потому что новая модель сервиса после Vista не позволит ему взаимодействовать с пользователем.
Неинтерактивные программы могут быть преобразованы в сервисы с помощью старого инструмента из набора инструментов Windows, anysrv.exe
Недавно написанное приложение, которому необходимо взаимодействовать с пользователем из службы, должно разделить приложение на два процесса: процесс службы и обычный пользовательский процесс, который отображает пользовательский интерфейс и выполняется в сеансах пользователя. Они могут взаимодействовать через средства IPC, такие как общая память, каналы, сокеты, сообщения и т. Д.