我想从一个自己作的程序中的窗口中抓图,如果那个窗口中有其他窗口遮挡(比如说qq),怎么能把那个窗口内容抓下来,GetDIBits可以吗?我觉得那是抓屏幕图像,谁有别的办法?或者有bmp文件读出点阵数据的代码也行,实在太急了,来不及自己写了,多谢

解决方案 »

  1.   

    让窗口Draw到内存DC,然后GetDibBits
      

  2.   

    一般抓屏幕图像,网上有一堆源码,只是有directX的有些难度
    有其他窗口遮挡的,很久前就有人在CSDN上发过贴,我记得没有解决
      

  3.   

    那谁有从bmp文件中直接读取象素的代码吗?
      

  4.   

    挡住就没办法了,如不当住,我有现成代码,想要给我发邮件
    [email protected]
      

  5.   

    得到象素数组:
    BITMAPFILEHEADER *pbmfh;
    BITMAPINFO *pbmi;
    BYTE *pBits;pbmfh = DibLoadImage(TEXT("map.bmp"));
    pbmi = (BITMAPINFO*)(pbmfh + 1);
    pBits = (BYTE*)pbmfh + pbmfh->bfOffBits;
      

  6.   

    你可以看一下这个帖子
    http://community.csdn.net/Expert/topic/4123/4123624.xml?temp=.9106409