2

Я хочу запустить исполняемый файл, который сохраняет файл XML на локальном диске, прежде чем компьютер (работающий в Windows 7) будет выключен.

Я знаю, что можно выполнить сценарии до выключения. Это можно настроить в редакторе локальной групповой политики в разделе «Конфигурация компьютера» -> «Настройки Windows» -> «Сценарии (запуск / завершение работы)».

Я попытался поместить свой исполняемый файл в свойство shutdown, но он не работает. Как запустить исполняемый файл до выключения компьютера? Как я могу подключить событие выключения?

1 ответ1

6

Запуск процесса, когда началось отключение, - плохая идея. На этом этапе наиболее вероятным результатом является возврат ошибки 1115 ERROR_SHUTDOWN_IN_PROGRESS.

Гораздо лучший способ - установить службу и зарегистрировать службу для получения уведомлений о завершении работы через RegisterServiceCtrlHandlerEx, см. Завершение работы:

Сервисные приложения получают уведомления о завершении работы в своих обработчиках. Чтобы зарегистрировать обработчик управления службой, используйте функцию RegisterServiceCtrlHandlerEx .

Служба AC # будет делать это, устанавливая CanShutdown в true и затем обрабатывая событие OnShutdown . Важно быть службой, а не приложением, так как завершение работы может происходить, когда ни один сеанс не вошел в систему и / или не может быть запущено несколько сеансов, когда происходит завершение работы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .