在win7下 bitblt 太慢

cxl7980 2011-07-23 11:28:45
这一段代码:
CWnd *pwnd = CWnd::FromHandle(GetDesktopWindow());
CDC *pdc = pwnd->GetWindowDC();
CBitmap bmp;
bmp.CreateCompatibleBitmap(pdc,720,480);
CDC memdc;
memdc.CreateCompatibleDC(pdc);
memdc.SelectObject(&bmp);
memdc.BitBlt(0,0,720,480,pdc,0,0,SRCCOPY);

BYTE *p = new BYTE[720*480*4];;
bmp.GetBitmapBits(720*480*4,p);

memdc.DeleteDC();
pwnd->ReleaseDC(pdc);
delete [] p;

在xp 下每秒执行300多次,win7下只有30次,主要差在bitblt上,这是为什么? 请大家帮忙,我要提高速度啊
...全文
151 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-08-13
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧