Сценарии

Редактировал(а) Alexandr Fokin 2022/12/05 06:38

Установка и удаление

1.1) installutil
C:\Windows\Microsoft.NET\Framework\<version>

installutil <ServiceFile>
installutil /u <ServiceFile>

1.2) sc

sc create "<YOUR SERVICE NAME>" binpath= "[PATH_TO_YOUR_SERVICE_EXE]" start= auto
sc delete "<YOUR SERVICE NAME>"

Описание и установка:
https://metanit.com/sharp/tutorial/21.1.php

Clean stop of Windows Service in .NET
https://dejanstojanovic.net/aspnet/2017/september/clean-stop-of-windows-service-in-net/

 ОСТАНОВКА, ЗАПУСК, РЕСТАРТ СЛУЖБ WINDOWS НА C#
https://alekseygulynin.ru/ostanovka-zapusk-restart-sluzhb-windows-na-c/

Запуск и остановкаnet stop <servicename>
net start <servicename>
Отладка

Когда рабочая служба дойдет до данной строки.
то она выкинет специальный exception, который позволит подключить отладку VisualStudio к службе и отслеживать работу службы, события, возникающие в ее жизненном цикле.

System.Diagnostics.Debugger.Launch();
Работа с зависшей на остановке и удалении службой
  1. Получение идентификатора PID
    Если PID = 0, то служба остановлена, иначе она еще работает.
    sc queryex <serviceName>
  2. Если служба еще работает, то выполнить
    taskkill /f /pid [PID]

Если служба помечена на удаление, но не может удалиться, то необходимо закрыть все процессы mmc

Путь к файлам из приложения службы.

При развертывании у службы windows, в отличи от консольного приложения, относительный путь будет рассматриваться относительно системных папок, а не относительно exe файла службы.

How to find windows service exe path
https://stackoverflow.com/questions/2833959/how-to-find-windows-service-exe-path

Теги:
Создал(а) Alexandr Fokin 2022/12/05 06:26