Решение для приложения .Net, у которого есть исходный код:
Если вы проектируете хорошо отделенные контроллер и бизнес-логику (MVC), это будет очень просто и быстро.
Сначала создайте новый проект в своем решении и выберите «Служба Windows». Это создаст вам новый проект с классом Program, который будет содержать Main.
Внутри Main вам нужно прикрепить класс Service Base.
static class Program
{
static void Main()
{
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[] {new Service1(), new MySecondUserService()};
ServiceBase.Run(ServicesToRun);
}
}
Внутри вашего сервиса (тот, кто расширяет ServiceBase, вам нужно переопределить:
protected override void OnStart(string[] args)
Чтобы позвонить своему контроллеру, чтобы начать работу, или вы можете просто начать с while (...) с потоком.
В противном случае, ссылка от Патрика Каффа хорошая.