【问题标题】:Where should I catch WM_HIBERNATE and WM_CLOSE in Windows Mobile/WinCE?在 Windows Mobile/WinCE 中我应该在哪里捕获 WM_HIBERNATE 和 WM_CLOSE?
【发布时间】:2011-02-11 08:51:23
【问题描述】:

我已阅读有关 Windows Mobile 的 X button's behaviour 以及 WM_HIBERNATE 和 WM_CLOSE 的信息,它们通过 Low Memory Situation 发送给所有 valid 应用程序。

WM_HIBERNATE 上的 MSDN:

当系统资源不足时,此消息会发送到应用程序。应用程序在发送此消息时应尝试通过卸载对话框、销毁窗口或在不更改内部状态的情况下释放尽可能多的本地存储来释放尽可能多的资源。

WM_CLOSE 上的 MSDN:

此消息作为窗口或应用程序应该终止的信号发送。

问题:

  1. 消息是仅发送到顶级窗口还是有效应用程序中的所有窗口?
  2. 我应该在哪里接收消息?在主消息泵中?在每个窗口?还是只有一些窗户?
  3. 如果我使用 MFC,我应该在哪里捕获它?

【问题讨论】:

    标签: winapi windows-mobile windows-ce


    【解决方案1】:

    您只需要以一种形式(或一种控件、本机窗口类等)捕获这些消息。由于您肯定想要一个在您的应用程序的整个生命周期中都存在的表单,因此主表单是一个合适的选择。

    【讨论】:

    • 感谢您的回答。消息是否发送到有效应用中的所有窗口?
    猜你喜欢
    • 2018-04-24
    • 2011-01-16
    • 1970-01-01
    • 2017-11-06
    • 2020-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    相关资源
    最近更新 更多