Продлить время, когда служба Windows остановлена - PullRequest
0 голосов
/ 25 февраля 2019

Мне нужно, чтобы служба остановилась достаточно долго.Примерно 5-10 минут.Теперь в windows 10 моя сервисная система убивает через 60 секунд, не дожидаясь ее завершения.Видел аналогичную проблему для C #, используя сетевую функцию RequestAdditionalTime.Но мне нужна реализация C ++ для API.

установка значения ключа в реестре не повлияла на HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ WaitToKillService, установленный в 300000

1 Ответ

0 голосов
/ 25 февраля 2019

Вам не следует связываться с глобальными настройками реестра.

При остановке службы звоните SetServiceStatus с SERVICE_STOP_PENDING и установите dwCheckPoint и dwWaitHint на правильное значение,И согласно документации для dwWaitHint звоните ServServiceStatus несколько раз, пока вы не закончите и служба не будет остановлена ​​(SetServiceStatus(h, SERVICE_STOPPED, ...)).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...