Отправка изображения с клиента b4a на сервер Delphi - PullRequest
0 голосов
/ 02 марта 2020

Я хочу отправить изображения с клиента b4a на сервер в Delphi. При отправке 76к я получаю только 6к.

Мой код выглядит следующим образом:

код b4a

If Successful Then
  astream.Initialize(socket.InputStream,socket.OutputStream,"astream")
  ' astream.InitializePrefix(socket.InputStream,True,socket.OutputStream,"astream")
End If

Private Sub astream_NewData (Buffer() As Byte)
  If File.Exists(File.DirRootExternal, "Pictures/1.jpg") Then
    Dim Data() As Byte=Bit.InputStreamToBytes(File.OpenInput(File.DirRootExternal, "Pictures/1.jpg")) ' jpg 156 Ko
    If astream.Write(Data) Then
      Log(Data.Length)
    End If
  Else
    Log("File Not Found")
  End If
End Sub

Delphi код

procedure TForm1.serverClientRead(Sender: TObject; Socket: TCustomWinSocket);
var
  Stream: TStringStream;
begin
  Stream := TStringStream.Create;
  try
    Stream.Position := 0;
    Stream.WriteString(Socket.ReceiveText);
    Stream.SaveToFile('D:\Received.jpg'); //jpg Received  6,66 Ko
  finally
    Stream.Free;
  end;
end;
...