В каких случаях может вызываться afx_msg void OnDestroy() или CWnd:OnDestroy()?
У меня есть окно, которое создано, и OnDestroy() вызывается в какой-то момент, когда пользователь никогда не нажимает кнопку "Закрыть" или "X", которая закрывает окно.
Какие другие операции / действия / вещи могли бы вызвать эту функцию и почему?
Документация Microsoft бесполезна, как обычно:
http://msdn.microsoft.com/en-us/library/vstudio/2eahe3wf.aspx
1 ответ
Это не задокументировано, потому что список будет довольно длинным. Например, общей причиной является нажатие Alt-F4. В конце концов, то же самое WM_CLOSE
сообщение. На самом деле, все, что отправляет WM_CLOSE
к вашему окну вызовет это.
Также происходит отключение приложений, возможно, из-за того, что компьютер выключается или потому что пользователь выходит из системы.