indy komponenten für chat

yoshie117

Mitglied
re

weil ich zugeben muß, dass ich der englischen sprache nicht zu sehr vertraut bin *gg* Ich komme mit einer englischen Hilfe einfach nciht richtig klar, weil ich schon manchal mit den deutschen probleme habe sie zu verstehen wegen den ganzen fremdwörtern. Und die Indyhilfe is nu mal englisch, zumindest bei mir
 

yoshie117

Mitglied
so ich habe das jetzt mal versucht was mcmorgen vorgesclagen hat, doch funktionieren tut es immer nch nicht es kommt immer socketfehler, ich habe euch mal beide pogrammcodes mit hineingeschrieben vielleicht könnt ihr mir weiterhelfen.

Server
Code:
unit Server;

interface

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

type
  THautfenster = class(TForm)
    port: TEdit;
    IdTCPServer1: TIdTCPServer;
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
    procedure IdTCPServer1Execute(AThread: TIdPeerThread);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Hautfenster: THautfenster;

implementation

{$R *.dfm}

procedure THautfenster.FormCreate(Sender: TObject);
begin
IdTCPServer1.DefaultPort :=23;
end;

procedure THautfenster.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
with AThread.Connection do
memo1.Lines.Add(ReadLn);
end;

end.

Client
Code:
unit Client;

interface

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

type
  Thauptfenster = class(TForm)
    IdTCPClient1: TIdTCPClient;
    ip: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  hauptfenster: Thauptfenster;

implementation

{$R *.dfm}

procedure Thauptfenster.FormCreate(Sender: TObject);
begin
IdTCPClient1.Host := ip.Text;
IdTCPClient1.Port := 23;
end;

procedure Thauptfenster.Button1Click(Sender: TObject);
begin
idtcpclient1.connect; 
end;

procedure Thauptfenster.Button2Click(Sender: TObject);
begin
idtcpclient1.Writeln('lol');
end;

end.
 
Zuletzt bearbeitet von einem Moderator:

Dario Linsky

Erfahrenes Mitglied
Hast Du die beiden Codes mal durch den Debugger laufen lassen und versucht rauszufinden, in welcher Zeile der Fehler auftritt?

PS: Bitte bitte bitte, gewöhnt Euch an, Code-Ausschnitte mit dem entsprechenden Tag zu versehen. Das macht das ganze übersichtlicher... :)
 

Arne Buchwald

Erfahrenes Mitglied
Original geschrieben von Lirion
PS: Bitte bitte bitte, gewöhnt Euch an, Code-Ausschnitte mit dem entsprechenden Tag zu versehen. Das macht das ganze übersichtlicher... :)
:) - Ach nee - ich hatte Yoshies-Code auch gerade formatiert ... *g+ - so viel zum Thema doppelt hält besser ....
 

yoshie117

Mitglied
re

*gg* entschuldigt bitte, hab ich nicht gewußt mir dem code. Nein habe ihn nicht durch den debugger laufen lasse, weil ich dabei immer nichts rausfinde. dasbringt mich immer nciht weiter, wenn ich weiß wo der fehler ist, aber nciht weiß wie ich ih beseitige. habt Ihr eine Idee, warum es nicht funktioniert? Für mich ist eiegntlich alles logisch, deswegen versteh ich das net. Wäre nett wenn Ihr mir helfen könntet.
 

McMorgen

Grünschnabel
yoshie,
füg mal beim Server in:

procedure THautfenster.FormCreate(Sender: TObject);

nochfolgendes hinzu:

idtcpserver.active := true;

dann sollte es jedenfalls klappen

mfg McMorgen
 

yoshie117

Mitglied
re

nein das funkioniert nicht, hatte ich auch schon mal vorher probiert, und da hat es nicht funktioniert, dass muß was anderes sein. also das problem. Da kommt richtig socket-fehler #11001 was bedeutet das?
 

Neue Beiträge