我用vc写了个只有托盘的程序,但是程序长时间运行后,当右键点击托盘时候弹出来的快捷菜单变成了黑框,测试了很久都不知道是什么原因。请各位大虾赐教!!

解决方案 »

  1.   

    GDI资源泄漏。GDI对象用完要选出DC销毁。
      

  2.   

    谢谢各位大虾!!!小弟检查一下。在我的程序中有创建画笔和画刷的操作代码如下,但不知道是否正确删除了 还请各位帮忙看看小弟先谢谢了:
    CBrush mBrush;
    HGDIOBJ pOldBrush;
    mBrush.CreateSolidBrush( RGB(255,255,255) );
    pOldBrush = SelectObject(hdc,(HGDIOBJ)&mBrush);
    SelectObject(hdc,pOldBrush);HPEN hpen1 = CreatePen( PS_SOLID, 1, RGB(255,255,255) );
    HBRUSH hbrush1 = (HBRUSH)GetStockObject( NULL_BRUSH );
    HPEN hpen_old = (HPEN)SelectObject( hdc, hpen1 );
    HBRUSH hbrush_old = (HBRUSH)SelectObject( hdc, hbrush1 );
    SelectObject( hdc, hpen_old );
    SelectObject( hdc, hbrush_old );
    DeleteObject(hpen1);
      

  3.   

    mBrush.DeleteObject();
    DeleteObject(hbrush1);不知道你选来选去的是在作什么
      

  4.   

    mBrush.DeleteObject();
    DeleteObject(hbrush1);不知道你选来选去的是在作什么
    中间的画图我都省略了 ,只是把创建过程和销毁过程贴出来了。谢谢oldn_CC_bird() ( ) 信誉:100 的指教