Якщо ви схожі на більшість користувачів Windows, у вас є безліч чудових утиліт, які запускаються під час запуску Windows. Хоча це чудово працює для більшості програм, є деякі, які було б непогано розпочати ще до того, як користувач увійде в систему на ПК. Для цього вам потрібно буде запустити програму як службу Windows.
Служби Windows є спеціальним класом програм, які налаштовані на запуск та запуск у фоновому режимі, як правило, без будь-якого користувальницького інтерфейсу та без потреби користувача для входу на ПК. Багато геймерів та досвідчених користувачів знають їх як ті речі, які ви відключили, щоб пришвидшити вашу систему це насправді більше не потрібно .
Основною перевагою запуску програми як послуги є те, що ви можете запустити програму до того, як користувач увійде в систему. Це може бути особливо важливим для програм, що надають важливі послуги, які ви хочете отримати, коли ви знаходитесь поза комп’ютером.
ПОВ'ЯЗАНІ: Розуміння та управління службами Windows
Чудовим прикладом цього є Plex , програма медіасервера, яка може передавати локальний вміст практично на будь-який ваш пристрій. Звичайно, ви можете дозволити йому сидіти в системному треї, як звичайна програма, але що, якщо комп’ютер перезавантажиться через відключення електроенергії або заплановані оновлення? Поки ви не ввійдете знову на ПК, Plex буде недоступним. Це дратує, якщо вам доведеться бігти в іншу кімнату, щоб запустити Plex назад, поки ваш попкорн охолоджується, і дуже дратує, якщо ви не в місті і намагаєтеся передавати свої медіа через Інтернет. Налаштування Plex як служби вирішить цю проблему.
Перш ніж почати, вам слід знати кілька важливих застережень щодо запуску програми як послуги:
- Додаток не поміщає піктограму в системну область. Якщо вам потрібен інтерфейс, який регулярно доступний для програми, можливо, він не найкраще підходить для роботи як служби.
- Коли вам потрібно внести зміни або оновлення конфігурації, вам потрібно буде зупинити службу, запустити програму як звичайну програму, зробити те, що вам потрібно зробити, зупинити програму, а потім знову запустити службу.
- Якщо програма вже налаштована на запуск під час запуску Windows, вам потрібно буде її відключити, щоб у вас не було двох екземплярів. Більшість програм мають в інтерфейсі опцію для перемикання цього налаштування. Інші можуть додати себе до вашого Папка запуску , щоб ви могли їх там видалити.
Готовий до катання? Давайте поговоримо про те, як це налаштувати.
Крок перший: Встановіть SrvStart
Щоб запустити програму як послугу, вам знадобиться невелика стороння утиліта. Є кілька там, але наш улюблений - це SrvStart . Спочатку він був розроблений для Windows NT і працюватиме практично з будь-якою версією Windows від Windows XP і новіших версій.
Для початку зверніться до
Сторінка завантаження SrvStart
і захопити утиліту. Завантаження містить лише чотири файли (два файли DLL та два файли EXE). Немає інсталятора; замість цього скопіюйте їх на комп’ютер
C: \ Windows
папку до головної папки Windows, щоб “встановити” SrvStart.
Ми також припустимо, що ви вже встановили та налаштували будь-яку програму, яку ви збираєтесь перетворити на послугу, але якщо ви цього не зробили, зараз був би сприятливий час зробити це теж.
Крок другий: Створіть файл конфігурації для нової служби
Далі вам потрібно буде створити файл конфігурації, який SrvStart буде читати для створення служби. З SrvStart можна зробити багато, і ви можете прочитати повну інформацію про всі параметри конфігурації на
сторінка документації
. У цьому прикладі ми будемо використовувати лише дві команди:
стартап
, який визначає програму для запуску, та
метод вимкнення_
, який повідомляє SrvStart, як закрити програму при зупинці відповідної служби.
Запустіть Блокнот і створіть файл конфігурації, використовуючи формат нижче. Тут ми використовуємо Plex, але ви можете створити файл для будь-якої програми, яку ви хочете запустити як службу.
стартап
команда просто вказує шлях, де знаходиться виконуваний файл. Для
метод вимкнення_
команда, ми використовуємо
winmessage
параметр, який змушує SrvStart надсилати повідомлення про закриття Windows у будь-які вікна, відкриті службою.
[Plex] запуск = "C: \ Файли програм (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe" shutdown_method = winmessage
Очевидно, налаштуйте шлях та назву відповідно до програми, яку ви запускаєте.
Збережіть новий файл конфігурації, де завгодно, і замініть розширення .txt на розширення .ini. Зверніть увагу на ім’я файлу, оскільки воно нам знадобиться на наступному кроці. Для зручності набору тексту в командному рядку ми пропонуємо тимчасово зберегти цей файл прямо на диску C:.
Крок третій: Використовуйте командний рядок для створення нової служби
Наступним кроком є використання команди Windows Service Controller (SC) для створення нової служби на основі критеріїв у вашому файлі конфігурації. Відкрийте командний рядок, клацнувши правою кнопкою миші меню «Пуск» (або натиснувши Windows + X), вибравши «Командний рядок (адміністратор)», а потім натиснувши «Так», щоб дозволити йому працювати з адміністративними привілеями.
У командному рядку використовуйте такий синтаксис для створення нової служби:
SC CREATE <servicename> Displayname = "<servicename>" binpath = "srvstart.exe <servicename> -c <шлях до конфігураційного файлу srvstart>" start = <starttype>
У цій команді слід зазначити кілька речей. По-перше, кожен знак рівності (=) має пробіл після нього. Це потрібно. Крім того,
<ім'я служби>
значення повністю залежить від вас. І, нарешті, для
<тип запуску>
значення, яке ви хочете використовувати
авто
щоб служба автоматично запускалася з Windows.
Отже, у нашому прикладі Plex команда буде виглядати так:
SC CREATE Plex Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto
Так, ви правильно прочитали: я використовував
C: PlexService.ini
замість
C: \ PlexService.ini
. Команда вимагає видалити скісну риску.
Коли ви запускаєте команду, ви повинні отримати повідомлення УСПІХ, якщо все піде добре.
З цього моменту ваша нова служба буде працювати, коли запускається Windows. Якщо ви відкриєте інтерфейс служб Windows (просто натисніть кнопку Пуск і введіть «Служби»), ви зможете знайти та налаштувати нову службу так само, як і будь-яку іншу.
І це все. Якщо у вас є програми, які починаються з Windows, і ви б хотіли, щоб вони запускалися, не потребуючи входу користувача, досить просто перетворити будь-який додаток на послугу. Ми лише щойно торкнулися основного методу створення та запуску нової служби, але з SrvStart можна зробити набагато більше, щоб точно налаштувати роботу служби. Обов’язково ознайомтеся з документацією, якщо хочете дізнатись більше.