在C/S中如何传输图片!(180分)

  • 主题发起人 主题发起人 yyzxclh
  • 开始时间 开始时间
Y

yyzxclh

Unregistered / Unconfirmed
GUEST, unregistred user!
在C/S中如何传输图片!
 
var
dc , tmpDC: HDC;
bmp: HBITMAP;
pStru:PAINTSTRUCT;
pImg:Pointer;
MS:TMemoryStream;
Bf:BITMAPFILEHEADER;
Bmf: TBitmapFileHeader;

WM_PAINT:begin
BeginPaint(hWnd,pStru);
/////LoadJpegFile(JpegFileName:string;var pImg:Pointer):Boolean;
if LoadJpegFile('221_2.jpg',pImg) then begin //转换位图
MS:=TMemoryStream.Create;
CopyMemory(@bf,pImg,sizeof(BITMAPFILEHEADER));
MS.Write(pImg^,bf.BfSize);
MS.ReadBuffer(Bmf, sizeof(Bmf));
//已经将位图储存到流中
//问题就在这,应该怎么把MS到BMP中。或者能否有更简单的方法?//bmp: HBITMAP;
//BMP:=
MS.Free;
FreeMem(pImg);

tmpDc := CreateCompatibleDC(DC);
Oldbmp := SelectObject(tmpDC,bmp);
BitBlt(DC,0,0,500,500,tmpDC,0,0,SRCCOPY);
SelectObject(tmpDC,oldbmp);
DeleteDC(tmpDC);
DeleteObject(bmp);
ReleaseDC(hWnd,dc);

EndPaint(hWnd,pStru);
end;


来自:sbzldlb, 时间:2005-12-30 14:31:36, ID:3313893
procedure TForm1.Button1Click(Sender: TObject);
var
a: TBITMAP ;
begin
a.Create;
a.LoadFromStream();
end;
 
自己已解决了
 
后退
顶部