Как запустить любое приложение в виде сервиса Windows

Константин Докучаев
Константин Докучаев
Как запустить любое приложение в виде сервиса Windows

Некоторые приложения не позволяют «из коробки» запускать себя при старте системы. А если и позволяют, такой обычный запуск может не подойти в редких случаях. Например, если вам нужно, чтобы приложение работало без входа в систему.

В таком случае поможет запуск в виде сервиса Windows. Это можно сделать различными способами, но самым простым для меня оказалась утилита Servy.

С её помощью даже неопытный пользователь легко сможет запустить любое приложение в виде сервиса. Для минимальной работы от вас потребуется указать название сервиса и путь до исполняемого файла. Затем останется нажать кнопку Install для его установки и Start для запуска.

Продвинутые пользователи могут настроить множество других параметров подобного запуска:

  • Service Name — внутреннее имя сервиса в Windows.
  • Service Description — описание, видимое в списке сервисов.
  • Process Path — путь к исполняемому файлу приложения.
  • Startup Directory — рабочая папка, из которой будет запущен процесс.
  • Process Parameters — дополнительные аргументы запуска программы.
  • Startup Type — режим старта (автоматически, вручную и т.д.).
  • Process Priority — приоритет процесса (низкий, нормальный, высокий).
  • Stdout File Path — файл, куда будет сохраняться стандартный вывод (stdout).
  • Stderr File Path — файл, куда будет сохраняться вывод ошибок (stderr).
  • Enable File Rotation — включить ротацию логов при достижении лимита.
  • Rotation Size — максимальный размер файла лога до ротации (в байтах).
  • Enable Health Monitoring — включить проверку «живости» процесса.
  • Heartbeat Interval — интервал проверки работоспособности (сек).
  • Max Failed Checks — количество неудачных проверок до перезапуска.
  • Recovery Action — что делать при сбое (перезапустить, ничего не делать).
  • Max Restart Attempts — сколько раз пытаться перезапустить сервис.
  • Process Path — путь к программе или скрипту, запускаемому перед основным сервисом.
  • Startup Directory — рабочая папка для этого предварительного процесса.
  • Process Parameters — параметры запуска для предварительного процесса.
  • Environment Variables — переменные окружения для предварительного процесса.
  • Stdout File Path — файл для сохранения стандартного вывода предварительного процесса.
  • Stderr File Path — файл для сохранения ошибок предварительного процесса.
  • Timeout — время ожидания завершения предварительного процесса (сек).
  • Retry Attempts — число попыток повторного запуска предварительного процесса при сбое.
  • Ignore Failure — запуск основного сервиса даже при неудаче предварительного процесса.
  • И многие другие параметры.


Great! Next, complete checkout for full access to All-In-One Person
Welcome back! You've successfully signed in
You've successfully subscribed to All-In-One Person
Success! Your account is fully activated, you now have access to all content
Success! Your billing info has been updated
Your billing was not updated