客户端发送:
...
MemStream := TMemoryStream.Create;
jpg := TJpegImage.Create;
jpg.Assign(Image0.Picture.Bitmap);
jpg.CompressionQuality :=20; //图象的质量,100为最高
jpg.JPEGNeeded;
jpg.Compress;
jpg.SaveToStream(MemStream);
jpg.Free; IdUDPClient.SendBuffer(MemStream,MemStream.Size);
服务器接收:
procedure TClientForm.IdUDPServerUDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var
M:TMemorystream;
begin
M:=TMemorystream.Create;
m.ReadBuffer(AData,AData.Size);
.....
end;
M:=TMemorystream.Create;
m.ReadBuffer(AData,AData.Size);
.....
end;貌似应该这样
M := AData;
或者
AData.ReadBuffer(M, AData.Size);