Как я могу запустить свое приложение в качестве службы Windows? - PullRequest
3 голосов
/ 11 декабря 2008

У меня есть приложение для Windows, которое я хочу запустить в качестве службы Windows - как я могу это сделать?

Ответы [ 5 ]

3 голосов
/ 11 декабря 2008

Вы можете использовать инструмент для этого: XYNTService .

Это сервис, который может запускать обычные приложения, мы используем его на работе, а также он работает с приложениями с графическим интерфейсом. Так как служба работает под локальной учетной записью SERVICE, вы не можете видеть GUI или получать к нему доступ каким-либо образом, потому что она работает в другом сеансе winlogon.

2 голосов
/ 11 декабря 2008

Быстрый способ, используйте инструменты INSTSRV и SRVANY в Windows Resource Kit: Как создать пользовательскую службу

1 голос
/ 24 июля 2010

Попробуйте это:

http://support.microsoft.com/kb/137890

Это будет работать для любой версии Windows. Я недавно проверил это с Server 2008.

1 голос
/ 11 декабря 2008

Решение для приложения .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 (...) с потоком.

В противном случае, ссылка от Патрика Каффа хорошая.

0 голосов
/ 24 июля 2010

В дополнение к уже рекомендованным XYNTService и SRVANY следует учитывать AlwaysUp, коммерческий продукт, предназначенный для запуска любого приложения в качестве службы Windows . Вы можете попробовать его бесплатно в течение 30 дней, чтобы убедиться, что он сделает всю работу за вас.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...