Изменения документа Windows Service

Редактировал(а) Alexandr Fokin 2023/01/23 22:44

<
От версии < 13.2 >
отредактировано Alexandr Fokin
на 2021/03/04 11:17
К версии < 15.1 >
отредактировано Alexandr Fokin
на 2021/11/30 19:31
>
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -1,26 +1,40 @@
1 1  0) В проекте службы необходимо реализовать класс установщик
2 2  
3 3  
4 -Управление установкой/удалением
4 +1) Управление установкой/удалением
5 5  
6 -1) installutil
6 +1.1) installutil
7 7  C:\Windows\Microsoft.NET\Framework\<version>
8 +{{code language="cmd"}}
8 8  installutil <ServiceFile>
9 9  installutil /u <ServiceFile>
11 +{{/code}}
10 10  
11 -2) sc
12 -sc create "[YOUR SERVICE NAME]" binpath= "[PATH_TO_YOUR_SERVICE_EXE]" start= auto
13 -sc delete "[YOUR SERVICE NAME]"
13 +1.2) sc
14 +{{code language="cmd"}}
15 +sc create "<YOUR SERVICE NAME>" binpath= "[PATH_TO_YOUR_SERVICE_EXE]" start= auto
16 +sc delete "<YOUR SERVICE NAME>"
17 +{{/code}}
14 14  
15 15  
20 +2) Запуск остановка
21 +{{code language="cmd"}}
22 +net stop <servicename>
23 +net start <servicename>
24 +{{/code}}
25 +
26 +
16 16  Когда рабочая служба дойдет до данной строки:
17 17  {{code language="c#"}}System.Diagnostics.Debugger.Launch();{{/code}}
18 18  то она выкинет специальный exception, который позволит подключить отладку VisualStudio к службе и ослеживать работу службы, события, возникающие в ее жизненном цикле.
19 19  
20 20  
32 +
21 21  Описание и установка:
22 22  https://metanit.com/sharp/tutorial/21.1.php
23 -https://metanit.com/sharp/tutorial/21.2.php
24 24  
36 +Clean stop of Windows Service in .NET
37 +https://dejanstojanovic.net/aspnet/2017/september/clean-stop-of-windows-service-in-net/
38 +
25 25  Ссылки:
26 26  [[Архитектура и модели.Концепция Worker (Worker and WorkerParallelWrapper).WebHome]]
XWiki.XWikiComments[4]
Комментарий
... ... @@ -1,7 +1,11 @@
1 1  Работа с зависшей на остановке и удалении службой:
2 +{{code language="cmd"}}
2 2  sc queryex <serviceName> если PID 0, то служба остановлена, иначе она еще работает.
4 +{{/code}}
3 3  
4 4  Если служба еще работает, то выполнить
7 +{{code language="cmd"}}
5 5  taskkill /f /pid [PID]
9 +{{/code}}
6 6  
7 7  Если служба помечена на удаление, но не может удалиться, то необходимо закрыть все процессы mmc
Дата
... ... @@ -1,1 +1,1 @@
1 -2021-03-04 11:17:48.285
1 +2021-03-04 11:17:48.287