Tja, doch ein bißchen zu früh gefreut.
Ich habe die Timer-Funktion nun auf jpg-Dateien umgestellt. Funktioniert auch anfangs prima, die Bilder werden auch im Client angezeigt.
Delphi-Quellcode:
procedure TForm1.Timer2Timer(Sender: TObject);
var
Filename:
string;
ftmpStream : TFileStream;
begin
try
FileName := '
capture.jpg';
with IdTCPClient2
do
begin
if connected
then DisConnect;
Host := edServer.text;
Port := sePort.Value +1;
Connect;
end;
IdTCPClient2.WriteLn('
PIC');
ftmpStream := TFileStream.Create(ProgDir + '
images\capture.jpg',fmCreate);
//while IdTCPClient2.connected do
IdTCPClient2.ReadStream(fTmpStream,-1,true);
Application.ProcessMessages;
FreeAndNil(fTmpStream);
VideoOut.Picture.LoadFromFile(ProgDir + '
images\capture.jpg');
//ShowMessage('Bild geladen!');
IdTCPClient2.Disconnect;
except
on E :
Exception do
ShowMessage(E.
Message);
end;
end;
Doch nach einiger Zeit kommt dann die Fehlermeldung, dass die Datei 'capture.jpg' nicht erstellt werden
kann. Das Bild "friert" förmlich ein, da offensichtlich nichts mehr geladen wird.