Zum verschicken von Bildern (BMP ist das TBitmap, das zu verschicken ist, bzw. das Objekt, in das es beim Empfangen geschrieben werden soll):
Delphi-Quellcode:
//Im IdTCPClient musst du vorher festlegen:
IdTCPClient.Host := '
EMPFÄNGER';
//IP-Addresse oder Computername (zumindest im lokalen Netzwerk)
IdTCPClient.Port := 33333;
//Zum Senden (von irgendwo ausgelöst):
var
St: TStream;
begin
St := TMemoryStream.Create;
try
BMP.SaveToStream(St);
St.Seek(0, soFromBeginning);
IdTCPClient.Connect;
try
IdTCPClient.WriteStream(St, True, true);
{ Wichtig! Der 3. Wert muss True sein, damit kommt am Server zuerst ein Integerwert an, in dem die Größe des Streams steht! }
finally
IdTCPClient.Disconnect;
end;
finally
St.Free;
end;
end;
//Und zum Empfangen(folgender Quelltext kommt ins IdTCPServer OnExecute):
var
I: Integer;
St: TStream;
begin
St := TMemoryStream.Create;
try
with AThread.Connection
do begin
I := ReadInteger;
ReadStream(St, I);
{ Tu was mit dem Stream Bsp: }
St.Seek(0, soFromBeginning);
BMP.LoadfromStream(St);
end;
finally
St.Free;
end;
end;
Wenn's Probleme gibt: Frag!