Hbmp = CreateDIBSection(GetDC(hwnd), BmpInfo, 0, pData, 0, 0)
    old = SelectObject(hdc, Hbmp)      '将位图选入刚才创建的设备场景中
    BitBlt hdc, 0, 0, W, H, GetDC(hwnd), 0, 0, SRCCOPY
    
  '  PrintWindow hwnd, hdc, 0
        
    Dim buff() As Byte
    ReDim buff(L - 1) As Byte
    
    CopyMemory buff(0), ByVal pData, L经过测试,如果用bitblt,buff最后还是为空,如果用printwindow 的话buff则不为空,请问这个是为什么呢

解决方案 »

  1.   

    请贴出完整代码。你的程序已经存在内存泄漏了。GetDC(hwnd),  
      

  2.   

    楼上的,你没水准就不要装出一副非要人家膜拜你的模样好不,你说要代码,你又不说清楚要什么内容代码,我的问题提的很清楚了,想问为什么printwindow没问题,而bitblt有问题,或许还差什么步骤,但是你非说我内存溢出,那为什么printwindow没问题,而且就算是内存溢出,跟我这个问题也没关系,而且我已经实地测试了不那样写一样没效果,说白了你就是在胡扯,你还好意思装出那副样子,我的确是来请教人的,但是也不是来受你这种人的气的
      

  3.   

    HOHO,难得有个图象方面的专家来有兴趣帮你看看,你还这个态度,一点不虚心,现在的年轻人真是气盛啊
      

  4.   

    0.0
    楼上的老马,以后还请多指教,问题已经自行解决了,是因为printwindow有后台截图功能,而bitblt没有的缘故,根本不是上面那个家伙的说的缘故~