程序中UI里有些图片在休眠后就显示不出来了,怀疑是休眠的时候保存到硬盘上的内存丢失了,如何在程序中通过代码来得知是否系统要进入休眠状态了呢?

解决方案 »

  1.   

    禁止自动休眠挂起和屏幕的自动关闭
    // 禁止
    SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED);// 恢复
    SetThreadExecutionState(ES_CONTINUOUS);
      

  2.   

    LRESULT Cdemo1Dlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
    {
    // TODO: 在此添加专用代码和/或调用基类
    if(message == WM_POWERBROADCAST && wParam == PBT_APMQUERYSUSPEND)
    {
    //此处休眠
    }
    return CDialog::WindowProc(message, wParam, lParam);
    }