Як зробити Windows-службу


 

Виконання операції створення служби Windows здійснюється за допомогою спеціалізованої утиліти Sc.exe, редагування параметрів якої проводиться в інтерпретаторі команд.


Інструкція

  1. Викличте головне меню операційної системи Microsoft Windows для виконання операції створення системної служби і перейдіть в пункт «Виконати».
  2. Введіть значення cmd у полі «Відкрити» та підтвердіть запуск інструменту «Командний рядок» натисканням кнопки OK.
  3. Використовуйте наступний синтаксис команди для визначення параметрів створюваної служби:
    sc Servername Command Servicename Optionname = Optionvalue …
    або скористайтеся значенням
    sc Command
    для виклику довідкової інформації.
  4. Пам’ятайте, що параметр Servername не використовується при створенні служби на локальному комп’ютері і необхідний тільки при визначенні імені віддаленого сервера, призначеного для запуску команд.
  5. Використовуйте параметр Config для редагування постійних налаштувань створюваної служби та виберіть команду Continue для відправки відповідного запиту.
  6. Скористайтеся параметром Control для виконання обраного запиту і вкажіть параметр Create для додавання створюваного сервісу до реєстру.
  7. Виберіть параметр EnumDepend для визначення залежностей сервісу і вкажіть імена розділів служби у значенні GetKeyName.
  8. Визначте конфігурацію вибраного сервісу запитом qc або визначте стан служби введенням параметра Query.
  9. Використовуйте значення Start для запуску, Stop — для зупинки і Delete — для видалення створюваного сервісу.
  10. Визначте ім’я, призначене системному сервісу в реєстрі за допомогою параметра Servicename. Врахуйте, що це ім’я не збігається з ім’ям, що з’являтимуться командою net start в групі «Служби» консолі управління.
  11. Використовуйте параметри Optionname і Optionvalue для визначення імен і значень необхідних додаткових параметрів (при необхідності) і вкажіть значення кожного з обраних параметрів окремо.
  12. Вкажіть повний шлях до bin-файлу служби в параметрі binPath і визначте групу приналежності створюваної служби в рядку group.
  13. Скористайтеся параметром depend = для визначення служб і груп, які підлягають попередньому запуску, і вкажіть ім’я користувача, для якого здійснюється запуск сервісу в параметрі obj =. За замовчуванням значення даного параметра — LocalSystem.
  14. Використовуйте параметр password = для визначення значення пароля і визначте ім’я сервісу, що використовується в додатках GUI, в параметрі DisplayName.
  15. Використовуйте наступний синтаксис команди для створення тестової системної служби з ім’ям service:
    sc create service binpath = ім’я_диска: int system32 serv.exe.