AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Tutorials Delphi Einen Chat mit den Sockets programmieren
Tutorial durchsuchen
Ansicht
Themen-Optionen

Einen Chat mit den Sockets programmieren

Ein Tutorial von Ultimator · begonnen am 5. Mai 2004 · letzter Beitrag vom 30. Jan 2014
Antwort Antwort
Seite 9 von 11   « Erste     789 1011      
bob_aus_der_flasche

Registriert seit: 13. Jan 2008
15 Beiträge
 
#1

Re: Einen Chat mit den Sockets programmieren

  Alt 7. Sep 2008, 00:17
der fehler kommt bei mir auch

wie soll das denn funzen xDDD

kapier nix von dem prog
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Einen Chat mit den Sockets programmieren

  Alt 7. Sep 2008, 00:20
Zitat von bob_aus_der_flasche:
der fehler kommt bei mir auch

wie soll das denn funzen xDDD

kapier nix von dem prog
  Mit Zitat antworten Zitat
noobkovski

Registriert seit: 17. Nov 2008
1 Beiträge
 
#3

Re: Einen Chat mit den Sockets programmieren

  Alt 17. Nov 2008, 21:54
hey , hab das gefühl da fehlt was in der PDF kam damit nicht ganz klar,


Client:
Delphi-Quellcode:
unit delchat;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, AppEvnts, ScktComp, ExtCtrls, StdCtrls, IdBaseComponent,
  IdComponent, IdIPWatch;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Timer1: TTimer;
    ClientSocket1: TClientSocket;
    ApplicationEvents1: TApplicationEvents;
    IdIPWatch1: TIdIPWatch;
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Delay(time: word);
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  Nickname,Nachricht:string;

implementation

{$R *.dfm}
procedure TForm1.delay(time:word);
var Start: Integer;
begin
Start:=GetTickCount;
while (GetTickCount)-(Start) <= time do
Application.ProcessMessages;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Label6.Caption:=IdIPWatch1.LocalIP; //Damit oben im Fenster schon beim FormCreate die aktuelle IP-Adresse angezeigt wird
Button1.Enabled:=false;//Damit man nicht schon vorher draufdrückt
Button2.Enabled:=false;// -''-
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Nickname:=Edit3.Text;
Button3.Enabled:=false;
Edit3.Enabled:=false;
Button2.Enabled:=true;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ClientSocket1.Host:=Edit2.Text;
ClientSocket1.Active:=true;
Button2.Enabled:=false;
Edit2.Enabled:=false;
Button1.Enabled:=true;
Nachricht:=Edit3.Text+' hat den Raum betreten';
delay(500);
ClientSocket1.Socket.SendText(Nachricht);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if (ClientSocket1.Active=true) and (Edit1.Text<>'') then
ClientSocket1.Socket.SendText(NickName+': '+Edit1.Text);
Edit1.Text:='';
end;


procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label6.Caption:=IdIPWatch1.LocalIP;
end;

end.

Server:
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    ServerSocket1: TServerSocket;
    IdIPWatch1: TIdIPWatch;
    Label2: TLabel;
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}



procedure TForm1.FormCreate(Sender: TObject);
begin
label2.caption:=IdIPWatch1.LocalIP;
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var Text:string;
i: Integer;
begin
Text:=Socket.ReceiveText;
Memo1.Lines.add(Timetostr(now)+': '+Text);
For I := 0 to ServerSocket1.Socket.ActiveConnections - 1 do
begin
with ServerSocket1.Socket.Connections [I] do
if (Connected) then SendText(Text);
end;
end;


end.


könntet ihr mir vll . noch sagen was dort noch fehlt damits erstmal funktioniert ?!
vielen dank im voraus, und sorry wenn es totaler schwachsinn ist, der dort steht
  Mit Zitat antworten Zitat
Xster

Registriert seit: 31. Okt 2008
85 Beiträge
 
#4

Re: Einen Chat mit den Sockets programmieren

  Alt 29. Nov 2008, 22:56
wo finde ich di IdIPWatch Komponente???
  Mit Zitat antworten Zitat
Dave729

Registriert seit: 8. Dez 2008
Ort: NRW, bald wieder in Sachsen
48 Beiträge
 
Delphi 6 Enterprise
 
#5

Re: Einen Chat mit den Sockets programmieren

  Alt 10. Dez 2008, 23:02
Hi, wollte mal fragen ob jemand laut dem Pdf den Link: nevrona öffnen kann. Hat jemand noch die Datein? Ich habe nämlich nur Delphi 3. Leider
Dave
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.993 Beiträge
 
Delphi 7 Professional
 
#6

Re: Einen Chat mit den Sockets programmieren

  Alt 20. Jan 2009, 18:22
Ab und zu sollte man ja auch mal seine ausgetretenen Pfade verlassen. Aber was fange ich denn mit den beiden heruntergeladenen Exen an? Client und Server zeigen beide die gleiche IP an - was soll ich denn im Client in das Edit "IP oder Name des Servers" eintragen? Welche IP? Welchen Namen?
Ralph
  Mit Zitat antworten Zitat
Whatever

Registriert seit: 7. Jan 2009
Ort: 127.0.0.1
102 Beiträge
 
#7

Re: Einen Chat mit den Sockets programmieren

  Alt 30. Jan 2009, 14:59
Zitat:
wo finde ich di IdIPWatch Komponente???
Die Komponente gehört zu den Indy Komponenten und ist nach der Installation unter dem Reiter Indy-Misc verfügbar.

Zitat:
Client und Server zeigen beide die gleiche IP an - was soll ich denn im Client in das Edit "IP oder Name des Servers" eintragen? Welche IP? Welchen Namen?
Sie zeigen beide die gleiche IP an weil sie auf ein und dem selben Rechner laufen. Entweder gibst du deine lokale IP an (die IP die angezeigt wird) oder 127.0.0.1 (localhost).

mfg Whatever
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.993 Beiträge
 
Delphi 7 Professional
 
#8

Re: Einen Chat mit den Sockets programmieren

  Alt 30. Jan 2009, 16:37
Zitat:
Entweder gibst du deine lokale IP an (die IP die angezeigt wird) oder 127.0.0.1 (localhost)
Arrrrggggg, ich hasse Computer, die nicht gehorchen ...

Vielen Dank für die Info. Leider kann ich da eingeben was ich will, der Mist funktioniert nicht. Egal, ob mit oder ohne Kaspersky: "Der Server kann nicht gefunden werden" An Einstellungen des Routers kann's ja wohl nicht liegen, da hier doch nur der Client mit dem Server auf dem gleichen PC verbunden werden soll - oder?.

PS #1: Warum sind eigentlich Client und Server überhaupt in 2 Programme aufgeteilt? Muss nicht jeder Chat-Teilnehmer immer beide Programme starten? Warum fasst man nicht beide Funktionalitäten in einem Programm zusammen?

PS #2: Wir bräuchten hier mal einen Smiley, mit man seinen widerspenstigen PC symbolisch mit einem großen Hammer zertrümmern kann!
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#9

Re: Einen Chat mit den Sockets programmieren

  Alt 30. Jan 2009, 19:42
Zitat von taaktaak:
Wir bräuchten hier mal einen Smiley, mit man seinen widerspenstigen PC symbolisch mit einem großen Hammer zertrümmern kann!
Den hab ich mir auch schon öfter gewünscht
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Ghostleader

Registriert seit: 22. Aug 2009
Ort: Hilden
116 Beiträge
 
Delphi 2010 Professional
 
#10

Re: Einen Chat mit den Sockets programmieren

  Alt 6. Okt 2009, 14:25
Wie genau installiere ich denn IdIPWatch bzw. diese Indykomponenten? Ich habe Delphi 5 da ist kein IdIPWatch enthalten!
Michael
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 9 von 11   « Erste     789 1011      


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 00:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz