AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi SocketRead wird nicht ausgeführt
Thema durchsuchen
Ansicht
Themen-Optionen

SocketRead wird nicht ausgeführt

Ein Thema von Octom · begonnen am 18. Dez 2013 · letzter Beitrag vom 18. Dez 2013
Antwort Antwort
Octom

Registriert seit: 14. Nov 2013
4 Beiträge
 
#1

SocketRead wird nicht ausgeführt

  Alt 18. Dez 2013, 19:03
Ich habe heute versucht einen kleinen Chat basierend auf einem Tutorial zu erstellen.
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    Edit1: TEdit;
    ClientSocket1: TClientSocket;
    ServerSocket1: TServerSocket;
    procedure FormActivate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
    procedure ClientSocket1Connect(Sender: TObject;
      Socket: TCustomWinSocket);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  massage: string;

implementation

{$R *.DFM}

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

procedure TForm1.Button1Click(Sender: TObject);
begin
  ClientSocket1.Socket.SendText(Edit1.Text);
  Edit1.Text:='';
end;

procedure TForm1.ClientSocket1Read(Sender: TObject;
  Socket: TCustomWinSocket);
begin

  Memo1.Lines.Add(Socket.ReceiveText);
end;
Beim Durchlaufen der einzelnen Anweisungen ist mir aufgefallen, dass nach dem Drücken des "Send" knopfes, die prozedur ClientSocket1Read nicht ausgeführt wird.
Ich hab keine Ahnung, woran es liegen kann, da ich auch erst seit heute mit den Sockets arbeite.
Woran könnte es liegen?
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: SocketRead wird nicht ausgeführt

  Alt 18. Dez 2013, 19:09
Hast du ClientType auf ctBlocking? In diesem Falle werden weder OnRead noch OnWrite Events ausgelöst.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: SocketRead wird nicht ausgeführt

  Alt 18. Dez 2013, 19:21
Und du hast einen Server, der dir auch was zurückschickt?
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Octom

Registriert seit: 14. Nov 2013
4 Beiträge
 
#4

AW: SocketRead wird nicht ausgeführt

  Alt 18. Dez 2013, 19:22
ich hab beides auf ctNonBlocking. Auch die Ports stimmen überein.
Server hab ich auch. Ist eigentlich nichts signifikant anderes, als in dem tutorial zu dem thema
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: SocketRead wird nicht ausgeführt

  Alt 18. Dez 2013, 21:40
Bei deinem Beispiel scheinst du innerhalb der Anwendung eine Nachricht per Client zu schicken und mit der Server-Komponente in derselben Anwendung zu empfangen.

Client (deine App) schickt Daten an Server (wieder deine App).
Der Server will sein OnClientRead ausführen, kann aber nicht, weils nicht zugewiesen ist.
Du hast nur für dein Client ein OnRead gesetzt; du müsstest aber bei der Server Komponente im OnRead Event den Code, den du da hast, einfügen!
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (18. Dez 2013 um 21:42 Uhr)
  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 23:18 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