Каков правильный ответ на WM_ENDSESSION с ENDSESSION_CLOSEAPP и wParam == FALSE?

В соответствии с документами WM_ENDESSION, когда lParam - ENDSESSION_CLOSEAPP, а wParam - FALSE, "приложение должно не закрыть вниз".

  • Итак, следует ли просто игнорировать это и использовать ответ по умолчанию?
  • Что это за цель?

(Я слушаю события/сообщения Windows в Qt (С++), чтобы выключить некоторые запущенные процессы, но это только контекст и не должен иметь никакого отношения здесь...)

Ответ 1

Да, a WM_ENDSESSION с wParam==false просто для информации. До получения этого приложения ваше приложение получит WM_QUERYENDSESSION. Если вы сделали что-то, чтобы подготовиться к закрытию в ответ на WM_QUERYENDSESSION, вы можете отменить его, когда/если вы получили WM_ENDSESSION с wParam=false. Если вы не предприняли никаких шагов, чтобы начать закрытие, вы можете просто вернуть 0.