如何填充完整的BMP格式图
var
lHwnd: HWND;
lhDC, lhBmp, lhMemDC: Integer;
lRect: TRect;
lBmp: TBitmap;
lStream:TMemoryStream;
begin
lhDC := GetWindowDC(lHwnd);
if lhDC <> 0 then
begin
lhMemDC := CreateCompatibleDC(lhDC);
if lhMemDC <> 0 then
begin
GetWindowRect(lHwnd, lRect);
lhBmp := CreateCompatibleBitmap(lhDC, lRect.Right-lRect.Left, lRect.Bottom-lRect.Top);
if lhBmp <> 0 then
begin
SelectObject(lhMemDC, lhBmp);
if not PrintWindow(lHwnd, lhMemDC, 0) then
ShowMessage( '不成功! ');
lBmp := TBitmap.Create;
lStream := TMemoryStream.Create;
lBmp.Handle := lhBmp;
lBmp.SaveToStream(lStream); {这个lStream好像缺少TBitmapInfoHeader,怎么填充进去啊?}
lBmp.Free;
DeleteObject(lhBmp);
end;
DeleteObject(lhMemDC);
end;
ReleaseDC(lHwnd, lhDC);
end;