Hi,
Ich versuche jetzt schon länger einen Stream mit IdTCPClient und IdTCPServer zuverschicken bisher erfolglos
.
Ich möchte das ein Steam von Client zu Server geschickt wird hier mal mein Ansatzt:
Client:
Im OnClick eine TButtons
Delphi-Quellcode:
aStream := TMemoryStream.Create;
ScreenToStream(aStream);
aStream.Position := 0;
Client.WriteStream(aStream, true, true, aStream.Size);
Server
Delphi-Quellcode:
procedure TConnections.ServerExecute(AThread: TIdPeerThread);
var
aStream : TMemoryStream;
begin
aStream := TMemoryStream.Create;
Athread.Connection.ReadStream(aStream);
aStream.Position := 0;
Form1.Image1.Picture.Graphic.LoadFromStream(aStream);
FreeAndNil(aStream);
end
;
Die funktion ScreenToStream mach einen Screenshot und Speichert diesen in dem Übergebenen Stream.
Ich habe auch schonb mit einem Sniffer geguckt ob er etwas sendet , und ja er sendet...
String kann ich ohne Probleme verschicken und auch empfangen.
Es gibt weder Fehler noch wird ein Bild im Image angezeigt.
greetz
Edit: Ich habe jerzt heraus bekommen das das Prgramm nach Athread.Connection.ReadStream(aStream) hängen bleibt, d.h. es bearbeitet die Befehle dahinter nicht mehr. Woran kann das liegen? Also muss der Fehler bei Athread.Connection.ReadStream(aStream) sein? Aber was ist daran falsch?
greetz