AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi String vom Server an Client Schicken (TCP Socket)
Thema durchsuchen
Ansicht
Themen-Optionen

String vom Server an Client Schicken (TCP Socket)

Ein Thema von i2keilko · begonnen am 22. Jul 2005 · letzter Beitrag vom 22. Jul 2005
Antwort Antwort
i2keilko

Registriert seit: 22. Jul 2005
2 Beiträge
 
#1

String vom Server an Client Schicken (TCP Socket)

  Alt 22. Jul 2005, 10:36
Hab mich jetz glaub ich durch das gesammte Internet gewühlt und nichts brauchbares gefunden!

Habe folgenden Seite gefunden die nützlich war! (Vielleicht kanns ja der eine oder andere mal brauen)
Link1


folgendes einfache Problemchen:

Ich habe einen TCP Server (ServerSocket1)

Der soll Daten von einem Programm(Bereits vorhanden) empfangen. Gelegentlich soll aber auch ein TextString an den Client übertragen werden.

Es gibt nur einen Client.

Empfangen ist ja kein problem dank dem OnClientRead Event.

Aber wie kann ich nun Daten an den Cleint schicken? Und das auch noch zu einem Zeitpunkt den ich bestimme (z.B in einem ONclickButton event)


Delphi-Quellcode:
{Es gibt die Funktion SendText, aber die gibt mir eben immer die Zugriffsverletzung zurück! Egal wie und wo ich die Funktion aufrufe   }
Socket.SendText('BlaBlaBla');

procedure TForm1.ServerSocket1Accept(Sender: TObject;
  Socket: TCustomWinSocket);
begin
    Memo1.Lines.Add('OnAccept');
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add(Socket.ReceiveText);
end;

procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  Memo1.Lines.Add('OnClientConnect');

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
ServerSocket1.Open;
end;

procedure TForm1.ServerSocket1Listen(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('OnListen');
end;

procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('Disconennect');
end;

procedure TForm1.ServerSocket1ClientError(Sender: TObject;
  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
  var ErrorCode: Integer);
begin
Memo1.Lines.Add('On errror' + IntToStr(ErrorCode));
end;

procedure TForm1.ServerSocket1ClientWrite(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('OnClientWrite');
end;

procedure TForm1.ServerSocket1GetSocket(Sender: TObject; Socket: Integer;
  var ClientSocket: TServerClientWinSocket);
begin
Memo1.Lines.Add('Get Socket');
end;
Währe auch für ne NÜTZLICHE Antwort sehr Dankbar!

MFG qq
  Mit Zitat antworten Zitat
i2keilko

Registriert seit: 22. Jul 2005
2 Beiträge
 
#2

Re: String vom Server an Client Schicken (TCP Socket)

  Alt 22. Jul 2005, 11:01
Nach eienr kurzen Unterhaltung im Chatroom bekam ich eine Lösung!


ServerSocket1.Socket.Connection[0].SendText('Bla');

Wobei die 0 für den Client Steht.

Hätte man also mehrere Clients, müsste man da die Nummer des Clients angeben an den man senden will!
  Mit Zitat antworten Zitat
HERMES

Registriert seit: 29. Nov 2004
142 Beiträge
 
#3

Re: String vom Server an Client Schicken (TCP Socket)

  Alt 22. Jul 2005, 11:03
ein server kann nur dann daten schicken wenn er gefragt wurde! Nicht aber von sich selbst aus ohne anfrage eines clients.
Soll ein server nun doch daten an einen client ohne vorherige anfrage senden, so muss der client selbst serverfunktionen bereitstellen! Also einen port öffnen und an diesem lauschen!

mfg
Sim
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#4

Re: String vom Server an Client Schicken (TCP Socket)

  Alt 22. Jul 2005, 11:08
Zitat von HERMES:
Soll ein server nun doch daten an einen client ohne vorherige anfrage senden, so muss der client selbst serverfunktionen bereitstellen! Also einen port öffnen und an diesem lauschen!
6, setzen. Wenn sich ein Client zu einem Server verbindet, so kann der Server solange Daten senden, bis der Client die Verbindung trennt. Natuerlich geht man hier von einer bestehenden Verbindung aus

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#5

Re: String vom Server an Client Schicken (TCP Socket)

  Alt 22. Jul 2005, 11:11
Zitat:
Es gibt die Funktion SendText, aber die gibt mir eben immer die Zugriffsverletzung zurück! Egal wie und wo ich die Funktion aufrufe
Und welche?
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
HERMES

Registriert seit: 29. Nov 2004
142 Beiträge
 
#6

Re: String vom Server an Client Schicken (TCP Socket)

  Alt 22. Jul 2005, 12:48
wenn eine verbindung besteht....
ich hatte es so verstanden, dass der server eine verbindung aufbauen soll
  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 10:07 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