Thema: Delphi [TCP] Bilderstreaming

Einzelnen Beitrag anzeigen

Chrissi91

Registriert seit: 28. Jul 2005
849 Beiträge
 
#4

Re: [TCP] Bilderstreaming

  Alt 4. Mai 2008, 07:45
Ups.

Der Fehler ist mir gar nicht aufgefallen. Dann versuche ich es jetzt noch ein bisschen deutlicher zu beschreiben:

Ich verschicke den Stream:

Delphi-Quellcode:
Try
    S := TMemoryStream.Create;
    JPG.SaveToStream(S);
    TCPClient.IOHandler.Write(S);
    FreeAndNil(S);
  Except
    ShowMessage('Fehler: SendStream');
  end;
Keine Fehlermeldung und JPG enthält ein richtiges Bild.

Ich empfange den Stream:

Delphi-Quellcode:
  //"Willkommensmeldung" zur Kontrolle, ob Verbindung zum Clienten steht
  AContext.Connection.IOHandler.WriteLn('Connecting to Client ...');
  connected := true;
  S := TMemoryStream.Create;
  while connected do begin
    try
      //Versuche Stream zu empfangen
      AContext.Connection.IOHandler.ReadStream(S);
      JPG := TJPEGImage.Create;
      JPG.LoadFromStream(S);
      Windows.Beep(1000,2000);
      JPG.SaveToFile('temp.jpg');
      JPG.Free;
    except
      ShowMessage('Fehler: GetStream');
    end;
  end;
  FreeAndNil(S);
Zwar ist der DualCore bei 100 % Auslastung, aber passieren tut nichts. Weder ein Windows-Signalton, noch eine Fehlermeldung.

Ich würde ja gerne mal mit Breakpoint testen, doch beim Compilieren kommt gleich:

Zitat:
---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EIdSocketError with message 'Socket Error # 10061
Connection refused.'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
Er sagt dann noch, dass er eine IdStackBSDBlaBlaBla nicht finden konnte.

Aber diese Fehlermeldung hab ich eigentlich immer bei den Indys, aber nicht, wenn ich die kompilierte EXE aufrufe, da meckert er dann komischerweise nicht.

Imho hat die Fehlermeldung nichts damit zu tun. Mache ich ein neues Projekt mit TCPClient aus der neuesten Indysammlung auf die Form, schreibe ins FormCreate TCPClient.Host := '127.0.0.1';, kommt beim Kompilieren der selbe Fehler, aber nicht später in der EXE.
  Mit Zitat antworten Zitat