Я думаю, что вам нужно изменить вопрос, потому что DavidPostill уже ответил, что вам нужно.
Завершение линейной программы перед сном кажется очевидным ответом. - ДэвидПостилл 2 февраля в 10:41
@DavidPostill Да, я сделал это. Я использую выход из программы Line перед ручным переходом в спящий режим, но если компьютер автоматически переходит в спящий режим, программа Line не прерывается. :) - 2 февраля в 14:37
Теоретически вы можете запланировать задачу сразу после сна. Я не уверен, будет ли это работать, но стоит попробовать.
1 Введите «Task Scheduler» в поле поиска и нажмите Enter
2 Нажмите «Создать задачу…» в Планировщике задач --- Действие
3 Перейти к триггерам, создать новые триггеры
4 В поле «Начать задание» выберите «По событию».
5 Выберите Log для «system», установите «Source» в «Kernel-Power», идентификатор события - «42» и нажмите «Ok».
6 Зайдите в «Действия» и создайте новые действия
7 Вы можете выбрать «Запустить программу», «Отправить электронное письмо» и «Показать сообщение» в действии, как вам нужно. Если вы хотите отключить звук, может потребоваться сценарий.
Поэтому вам нужно запланировать задачу сразу после события питания системы / ядра. Идентификатор события сна 42. Вам нужен небольшой скрипт, который закрывает ваше приложение, возможно что-то из WSH или пакетный скрипт.
Если событие 42 слишком поздно для закрытия приложения, тогда еще есть надежда. В соответствии с этим в api power kernel не происходит события до перехода в спящий режим: https://superuser.com/a/601685/105936 , но вы можете найти что-то подобное, изучив дополнительные ссылки в ответе.
Таким образом, нет ничего невозможного, чтобы закрыть приложение автоматически, но вы должны работать над ним.