将图片从客户端发送到服务器的问题
我试图使用服务器和客户端套接字将'C: picture.bmp'中的图片发送到'c: temp picture.bmp'
客户端onconnect事件处理程序如下:
procedure TForm2.ClientSocket1Connect(Sender: TObject;
Socket: TCustomWinSocket);
var
fs : tfilestream;
begin
fs := TFileStream.create('C:picture.bmp', fmOpenRead);//picture allready exists
socket.SendStream(fs);
fs.free;
end;
和onclientread服务器:
procedure TForm2.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
fmm : tfilestream;
iLen: Integer;
Bfr: Pointer;
begin
iLen := Socket.ReceiveLength;
GetMem(Bfr, iLen);
fmm := TFileStream.Create('c:temppicture.bmp', fmCreate or
fmShareDenyWrite);
try
Socket.ReceiveBuf(Bfr^, iLen);
fmm.Write(Bfr^, iLen);
finally
FreeMem(Bfr);
fmm.Free;
end;
end;
图片是收到/创建但是从来没有收到过腐败,即因为tfilestream.create方法创建的?
请帮忙!我做错了什么?
没有找到相关结果
已邀请:
2 个回复
锯康
讹巳漓把备