AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Problem mit IP Works*
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit IP Works*

Ein Thema von Stefan_Bo · begonnen am 9. Mär 2005 · letzter Beitrag vom 10. Mär 2005
Antwort Antwort
Stefan_Bo

Registriert seit: 26. Feb 2005
7 Beiträge
 
Delphi 7 Professional
 
#1

Problem mit IP Works*

  Alt 9. Mär 2005, 10:19
Hallo zusammen, habe leider ein kleines Problem mit der IPWorks Komponente ipwIPPort.
Hier das Problem:
Ich habe einen keinen Server erstellt der sobald ein Client Connected ein Bild per Stream sendet.
Soweit so gut...
Jetzt das Problem:
das DataIn Ereigniss von IPPort setzt die eingehenden Daten als String.
1. Wie kann ich diesen String wieder als Stream umwandeln damit ich diese in die Image-Komponente des Clients laden kann ????
2. Es soll danach dann noch Text per Stream gesendet werden, der im Client in ein Memo geschrieben wird. Sage ich aber einfach Memo1.lines.add(text); bekomme ich nur ein | Zeichen pro Nachricht. (text ist der name des Strings in der Kompo )

Wäre super wenn mir jemand hier weiterhelfen könnte, mache da wohl irgendwie Denkfehler.
Hatte jetzt für Punkt1 gedacht ich schreib das ganze wieder in einen Stream und zeig das an aber da bekomme ich dann einen JPEG Fehler # 42.
Hier mal der Quelltext:
Delphi-Quellcode:
procedure TForm1.ipwIPPort1DataIn(Sender: TObject; Text: String;
  EOL: Boolean);
var Bildstream:TMemoryStream;
begin
     Bildstream:= TMemoryStream.Create;
     try
       Bildstream.Read(text,length(text));
       bildstream.Position:=0;
       jp.Loadfromstream(bildstream);
       image1.Picture.Assign(jp);
     finally
       image1.Invalidate;
       Bildstream.Free;
     end;
end;
Hoffe Ihr könnt mir helfen.

Gruss

Stefan
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Problem mit IP Works*

  Alt 9. Mär 2005, 17:47
Delphi-Quellcode:
procedure TForm1.ipwIPPort1DataIn(Sender: TObject; Text: String;
  EOL: Boolean);
var Bildstream:TMemoryStream;
begin
     Bildstream:= TMemoryStream.Create;
     try
// Bildstream.Read(text,length(text)); // Falsch !!
       Bildstream.WriteBuffer(text[1],length(text)); // Richtig
       bildstream.Position:=0;
       jp.Loadfromstream(bildstream);
       image1.Picture.Assign(jp);
     finally
       image1.Invalidate;
       Bildstream.Free;
     end;
end;
Oder noch eleganter/besser:
Delphi-Quellcode:
procedure TForm1.ipwIPPort1DataIn(Sender: TObject; Text: String;
  EOL: Boolean);
var Bildstream:TStream;
begin
     Bildstream:= TStringStream.Create(text);
     try
       bildstream.Position:=0;
       jp.Loadfromstream(bildstream);
       image1.Picture.Assign(jp);
       image1.Invalidate;
     finally
       Bildstream.Free;
     end;
end;
Jetzt musst du aber noch aufpassen! Wenn du die Daten in Häppchen zerlegt bekommst, muss du
die Daten aneinanderhängen. Ist EOL: Boolean die Kennung, dass das letzte Paket geschickt wurde? (ich kenne die IP Works Komponenten nicht)
Andreas
  Mit Zitat antworten Zitat
Stefan_Bo

Registriert seit: 26. Feb 2005
7 Beiträge
 
Delphi 7 Professional
 
#3

Re: Problem mit IP Works*

  Alt 9. Mär 2005, 18:00
Danke für deine Antwort, werde das mal test, melde mich dann wieder...
  Mit Zitat antworten Zitat
Stefan_Bo

Registriert seit: 26. Feb 2005
7 Beiträge
 
Delphi 7 Professional
 
#4

Re: Problem mit IP Works*

  Alt 10. Mär 2005, 09:04
Schade, geht leider auch nicht bekomme immer einen JPEG-Fehler=#53.
Habe beide varianten ausprobiert.
EOF ist True wenn CRLF ('#13#10') ist, sodass z.B eingehender Text in Zeilen gesetzt werden.
Habe schon nach dem Fehler 53 geschaut aber bis dato nichts gefunden...
Vielleicht noch ne idee ?

Gruss

Stefan
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz