Thema: Delphi Indy TCPServer -> Client

Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

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

Indy TCPServer -> Client

  Alt 4. Jun 2005, 12:45
Ich bekomme es beim besten Willen nicht hin vom Server eine Nachricht an den Client zu schicken

Mein Server :

Delphi-Quellcode:
unit mbknet;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdTCPServer, IdBaseComponent, IdComponent, IdTCPConnection,
  IdTCPClient, StdCtrls;

type
  TForm1 = class(TForm)
    IdTCPServer1: TIdTCPServer;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    IdTCPClient1: TIdTCPClient;
    procedure FormCreate(Sender: TObject);
    procedure IdTCPServer1Execute(AThread: TIdPeerThread);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  IDTCPServer1.Active := true;
end;

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
  with AThread.Connection do
  begin
    WriteLn('Hello from Basic Indy Server server.');
    end;
end;

end.
Mein Client

Delphi-Quellcode:
unit mbknet_client;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  StdCtrls, ExtCtrls, IdTCPServer;

type
  TForm1 = class(TForm)
    IdTCPClient1: TIdTCPClient;
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Button2: TButton;
    Timer1: TTimer;
    IdTCPServer1: TIdTCPServer;
    IdTCPClient2: TIdTCPClient;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
IDTCPClient1.Host := Edit1.Text;
 with IDTCPClient1 do begin
    Connect;
    Caption := ReadLn;
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  IDTCPClient1.WriteLn('HALLO SERVER'); // kläglicher versuch an den Server eine Nachricht zu senden
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if IDTCPClient1.Connected then
  Form1.Caption := IDTCPClient1.ReadLn() // kläglicher Versuch Nachrichten vom Server zu empfangen
end;

end.
Das Meiste ist aus einem Tutorial übernommen... bis auf das was nicht funktioniert
Wobei ich das aus dem Tutorial wohl verstehe... Ich komme nur nicht mehr weiter
Michael
  Mit Zitat antworten Zitat