AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Daten vom Server an den Client senden?
Thema durchsuchen
Ansicht
Themen-Optionen

Daten vom Server an den Client senden?

Ein Thema von Nonsense · begonnen am 4. Sep 2004 · letzter Beitrag vom 5. Sep 2004
Antwort Antwort
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#1

Daten vom Server an den Client senden?

  Alt 4. Sep 2004, 20:18
Hallo,

ich arbeite mir den Standard TClientSocket und TServerSocket Komponenten von Delphi.
Soweit klappt alles, nur würde ich gerne Daten vom Server an den Client schicken.
Dazu meine Frage: Muss auf beiden ein Server und ein Client laufen, oder reicht es, wenn einer der beiden Server ist und der andere Client, so dass Daten _ausgetauscht_ werden können?

Danke.

Greetings
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Daten vom Server an den Client senden?

  Alt 4. Sep 2004, 21:06
hi,

es reicht, wenn auf einem programm der serversocket und auf dem anderen der clientsocket läuft.
der client sendet dann einfach was an den server. der server feuert ein Event (OnClientRead) und kann mit dem parameter "socket", der im event zu finden ist, gezielt daten an den clienten senden, der das event ausgelöst hat.

nachtrag: bei dieser architektur (client/server) sind die einzelnen clienten nicht in der lage, untereinander direkt zu kommunizieren (nur über den umweg über den server). wenn jedes programm server und client am laufen hat, ist es relativ leicht, ein p2p-netzwerk zu erstellen, das keinen extra server benötigt und in dem jeder teilnehmer mit jedem anderen kommunizieren kann (gleichzeitig).

Aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#3

Re: Daten vom Server an den Client senden?

  Alt 4. Sep 2004, 21:28
Da stellt sich dann die Frage nach dem "wie?".
Im OnClientRead des Servers empfängt er ja die Daten. Wenn ich jetzt die Daten, die der Client schickt, wieder zurücksenden will, wie mache ich das?
Beispiel:
Delphi-Quellcode:
procedure TFormMain.ServerClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  MyMemo.Lines.Add(Socket.ReceiveText);
  // Server.Socket.SendText(Socket.ReceiveText); ???
end;
Wie muss ich das machen? Und wie kann der Client die Daten empfangen?

Thx.
  Mit Zitat antworten Zitat
stefan2005

Registriert seit: 30. Sep 2003
Ort: Puchheim
250 Beiträge
 
Delphi 6 Personal
 
#4

Re: Daten vom Server an den Client senden?

  Alt 4. Sep 2004, 22:21
hi,
der ServerSocket verschickt Daten (in diesem Fall Text) folgendermaßen:
Code:
ServerSocket1.Socket.Connections[0].SendText('Beispiel');
in diesem Fall wird an die Verbindung 1 der Text geschickt !

Die Anzahl der Verbindungen kann ermittelt werden mit:
Code:
Verbindungen := ServerSocket1.Socket.ActiveConnections;
Übrigens geht "Socket.ReceiveText" nur einmal (!), danach wird dies gelöscht (bei mir zumindest) !
Also bei mehrmaligem Verwenden am besten in einer String-Variable speichern !

cu,
stefan2005
  Mit Zitat antworten Zitat
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#5

Re: Daten vom Server an den Client senden?

  Alt 5. Sep 2004, 11:11
Danke. Aber wie kann der Client die Daten empfangen?
Edit: Ok, hat sich erledigt. Danke.
  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 21:50 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