AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Bild über Lan schicken

Bild über Lan schicken

Ein Thema von Counter909 · begonnen am 5. Aug 2008 · letzter Beitrag vom 7. Aug 2008
Antwort Antwort
Counter909

Registriert seit: 10. Aug 2006
129 Beiträge
 
#1

Bild über Lan schicken

  Alt 5. Aug 2008, 16:30
HI


ich hab einen Client und einen Server mit TServsocket bzw. TClientsocket fertiggestellt und jetzt möchte ich vom Server aus zum Beispiel ein Bild(Screenshot), das neu gemacht wurde, dem Client schicken. Muss ich das dann über ein Stream schicken oder wie gehe ich da am besten vor ?


MfG
Counter
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#2

Re: Bild über Lan schicken

  Alt 5. Aug 2008, 17:24
als erstes sendest du eine Längenangabe zum Client und danach das Bild verschicken. Da ClientSocket und Serversocket eine definierte Paketgröße von 4096Byte haben, wäre es vllt. sinnvoll, wenn du auf Indy unsteigst. Dort gibts ReadStream, welches für den größeren Empfang sorgt. Das Bild kannst du auch per JPEG kompressieren und dann als Stream verpacken. Wenn du jetzt nur das Objekt verschickst, kommt eine Zahlenkompination an, mit der der Zielrechner nichts anfangen kann. (also doch per Stream)

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Counter909

Registriert seit: 10. Aug 2006
129 Beiträge
 
#3

Re: Bild über Lan schicken

  Alt 5. Aug 2008, 18:21
gibt es dazu i-wo eine gute Erklärung ?
hab zu den themen nur die eifnach Methoden gefunden mit sendtext und recievetext, aber das hab ich ja schon alles kapiert ^^
  Mit Zitat antworten Zitat
chest3rs

Registriert seit: 15. Okt 2006
Ort: Berlin
84 Beiträge
 
Delphi 7 Personal
 
#4

Re: Bild über Lan schicken

  Alt 6. Aug 2008, 10:21
Hi,

das Verschicken von Bilder ist da etwas kompliziert. Ich hab ein sehr gutes Tutorial zu diesem Thema gelesen:

Binär-Protokoll-Tutorial von Narses

mfg
  Mit Zitat antworten Zitat
Counter909

Registriert seit: 10. Aug 2006
129 Beiträge
 
#5

Re: Bild über Lan schicken

  Alt 6. Aug 2008, 16:21
also das ist i.wie nicht ganz einfach....aber ist das richtig, dass man Bilder über winsock nur bis 8kb verschicken kann ?
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#6

Re: Bild über Lan schicken

  Alt 7. Aug 2008, 06:56
HI,

ich denk mal schon, dass das geht. Bei meinen Programmen werden bis zu 430kb (JPEG) "auf einmal" übertragen. Wie sonst könntest du dann mit deinem Browser größere Webseiten laden oder dich mit 1GB großen Dateien rumschlagen, wenn alles auf 8kb begrenzt sei?

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Counter909

Registriert seit: 10. Aug 2006
129 Beiträge
 
#7

Re: Bild über Lan schicken

  Alt 7. Aug 2008, 15:47
aso dann ist ja gut im tutorial wird i-wo einmal erwähnt, dass es nur 8kb geht bei winsock, deshalb nehmen viele Indy, bei dem man dann mehr kann


kannst du vllt ein mini beispiel geben, wie gesendet wird und empfangen ?


also server denk ich mal so:

Delphi-Quellcode:
imgdata:=Tstream.create;
bitmap.savetostream(imgdata);
serversocket1.socket.connection[o].sendstream(imgdata)

nur das empfangen macht mir ziemliche schwierigkeiten...hatte das einmal so, dass jedes mal dann kam, dass die bimap ungültig ist, aber ansonst kein Fehler kam


mfg
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

Re: Bild über Lan schicken

  Alt 7. Aug 2008, 15:50
Hi,

TStream ist eine abstrakte Klasse und sollte/darf nie instanziert werden. Benutz lieber TMemoryStream.

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Counter909

Registriert seit: 10. Aug 2006
129 Beiträge
 
#9

Re: Bild über Lan schicken

  Alt 7. Aug 2008, 15:54
stimmt...darauf bin ich auch i-wo gestoßen...danke

also statt Tstream dann TMemoryStream
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:14 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