Moin!
Also ich mach das in meinem Prog so:
Delphi-Quellcode:
procedure SEND();
var fs:TFilestream;
Tempfile:
string;
begin
//DasFile was du verschicken willst
Tempfile:="C:\temp\myfile.dat"
//Überprüfen ob verbunden ist
if not IdTCPClient.Connected
then
begin
try
//Sonst verbinden
IdTCPClient.Connect;
except
ShowMessage('
Falsche IP oder Port');
end;
exit;
end;
//Filestream erzeugen
fs := TFileStream.Create(Tempfile, fmOpenRead
or fmShareDenyWrite);
try
IdTCPClient.OpenWriteBuffer;
//stellt sicher, dass alle Daten versendet werden
try
IdTCPClient.WriteStream(fs, true, true, 0);
{das 2. true ist wichtig!, da es bewirkt, dass die Größe des Streams mittels WriteInteger zuerst verschickt wird}
IdTCPClient.CloseWriteBuffer;
except
IdTCPClient.CancelWriteBuffer;
raise;
end;
finally
//Stream wieder freigeben
fs.free
end;
end;
Hoffe das hilft dir ein bisschen!
Gruß Pascal