AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Client<>Socket Chat Problem
Thema durchsuchen
Ansicht
Themen-Optionen

Client<>Socket Chat Problem

Ein Thema von DelphiProgrammer · begonnen am 30. Jan 2014 · letzter Beitrag vom 31. Jan 2014
Antwort Antwort
DelphiProgrammer

Registriert seit: 5. Apr 2013
Ort: Kennste eh net! wer weiss, wer weiss o.o
43 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#1

Client<>Socket Chat Problem

  Alt 30. Jan 2014, 07:58
Hi,

ich habe einen chat mit dieser anleitung programmiert und auf einem rechner funktoniert alles prima. Wenn ich jetzt aber
auf einem rechner server und einen client laufen lasse und auf einem anderen rechner(im netzwerk)
einen zweiten client habe geht nur der teil, der auf dem rechner mit dem server ist alles prima
mit rechner 2 kann ich micht nicht verbinden!
Verbindung haben beide - sie sind im selben Heimnetzwerk - und ich habe rechner 1 (der mit server)
auch angepingt: ging. Port ist 7777 denke der wird nicht belegt sein...
Wäre toll wenn ihr mir helfen könntet...

LG Christopher
Christopher
---------------------------------------------------
I ♥ Delphi
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.004 Beiträge
 
Delphi 2009 Professional
 
#2

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 08:14
An welche IP Adresse ist der Server denn gebunden? Wenn er auf 127.0.0.1 oder localhost läuft, kann man nur vom gleichen Rechner aus eine Verbindung aufbauen.
Michael Justin
  Mit Zitat antworten Zitat
DelphiProgrammer

Registriert seit: 5. Apr 2013
Ort: Kennste eh net! wer weiss, wer weiss o.o
43 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 10:32
An welche IP Adresse ist der Server denn gebunden? Wenn er auf 127.0.0.1 oder localhost läuft, kann man nur vom gleichen Rechner aus eine Verbindung aufbauen.
? Das verstehe ich grad net wirklich...
der client, der auf dem selben rechner wie der sever ist hat keine probleme mit dem verbinden
aber ich kann beim server nicht einstellen welche ip er haben soll... wie auch...

LG Christopher
Christopher
---------------------------------------------------
I ♥ Delphi
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

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

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 10:37
Zitat:
aber ich kann beim server nicht einstellen welche ip er haben soll... wie auch...
Doch, du kannst einstellen, an welche IP er sich binden soll. Üblicherweise ist das 0.0.0.0, also alle Netzwerkadapter. Aber du kannst auch nur an 127.0.0.1 oder an 192.168.1.1 oder einer VPN-Verbindung lauschen.

Allerdings, wenn dir das nicht bewusst ist, hast du wahrscheinlich 0.0.0.0 . Dein Link funktioniert nicht, deswegen weiß ich nicht, was du geschrieben hast.

Edit: Ah, jetzt habe ich den Fehler in der Link-Url gesehen...


Edit2: Ui, Das Tut....naja. Wie sieht es bei dir mit Firewall aus. Es hilft auch immer mal existierende Programme (z.B. Telnet) zum testen zu nehmen
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.

Geändert von sirius (30. Jan 2014 um 10:46 Uhr)
  Mit Zitat antworten Zitat
DelphiProgrammer

Registriert seit: 5. Apr 2013
Ort: Kennste eh net! wer weiss, wer weiss o.o
43 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 10:51
Zitat:
aber ich kann beim server nicht einstellen welche ip er haben soll... wie auch...
Doch, du kannst einstellen, an welche IP er sich binden soll. Üblicherweise ist das 0.0.0.0, also alle Netzwerkadapter. Aber du kannst auch nur an 127.0.0.1 oder an 192.168.1.1 oder einer VPN-Verbindung lauschen.

Allerdings, wenn dir das nicht bewusst ist, hast du wahrscheinlich 0.0.0.0 . Dein Link funktioniert nicht, deswegen weiß ich nicht, was du geschrieben hast.

Edit: Ah, jetzt habe ich den Fehler in der Link-Url gesehen...


Edit2: Ui, Das Tut....naja. Wie sieht es bei dir mit Firewall aus. Es hilft auch immer mal existierende Programme (z.B. Telnet) zum testen zu nehmen
firewall sollte es eig. zulassen und wo kann ich die ip denn einstellen?

Hier noch mein quellcode:
Christopher
---------------------------------------------------
I ♥ Delphi
  Mit Zitat antworten Zitat
DelphiProgrammer

Registriert seit: 5. Apr 2013
Ort: Kennste eh net! wer weiss, wer weiss o.o
43 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 10:52
Delphi-Quellcode:
unit CChatServer;

interface

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

type
  TCC = class(TForm)
    ServerSocket1: TServerSocket;
    procedure FormCreate(Sender: TObject);
    procedure ServerSocket1ClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  CC: TCC;

implementation

{$R *.dfm}

procedure TCC.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var msg: String;
    i : Integer;
begin
  msg:= Socket.ReceiveText; //Empfangene Nachricht wird in "msg" gespeichert
  for i := 0 to ServerSocket1.Socket.ActiveConnections-1 do
    //Die Nachricht wird an alle verbundenen Clients gesendet
    ServerSocket1.Socket.Connections[i].SendText(msg);
end;

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

end.
Vielleicht hilft das noch
Christopher
---------------------------------------------------
I ♥ Delphi
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.733 Beiträge
 
Delphi 6 Enterprise
 
#7

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 11:33
Und wie sieht der Client aus?
Ralph
  Mit Zitat antworten Zitat
DelphiProgrammer

Registriert seit: 5. Apr 2013
Ort: Kennste eh net! wer weiss, wer weiss o.o
43 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#8

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 13:58
Hier noch der Client
Delphi-Quellcode:
unit CClient;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ScktComp, XPMan;

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    EdNick: TEdit;
    EdIP: TEdit;
    EdPort: TEdit;
    Button1: TButton;
    XPManifest1: TXPManifest;
    memosend: TMemo;
    Label4: TLabel;
    Btnsend: TButton;
    MemoReceive: TMemo;
    ClientSocket1: TClientSocket;
    procedure ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket);
    procedure ClientSocket1Disconnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure BtnsendClick(Sender: TObject);
    procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  ClientSocket1.Host:=EdIP.Text;
  ClientSocket1.Port:=StrToInt(EdPort.Text);
  ClientSocket1.Open;
end;

procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
var msg:string;
begin
  msg:=Socket.ReceiveText; //Der Empfangene Text wird in der Variable msg gespeichert
  MemoReceive.Lines.Add(msg); //Die Nachricht wird in das Memo eingefügt
end;

procedure TForm1.BtnsendClick(Sender: TObject);
var msg: String;
begin
  if UpperCase(EdNick.Text) = 'ADMINISTRATORthen
  begin
    ShowMessage('Please choose an another nickname.');
  end
  else
  begin
  msg:=MemoSend.Text; //Text zum Senden wird in "msg" gespeichert
  msg:= EdNick.Text +': '+msg; //Hinzufügen von Nickname
  ClientSocket1.Socket.SendText(msg); //Senden der Nachricht
  MemoSend.Clear;
  end;
end;

procedure TForm1.ClientSocket1Disconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  BtnSend.Enabled:=false;
end;

procedure TForm1.ClientSocket1Connect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  BtnSend.Enabled:=true;
end;

end.
Christopher
---------------------------------------------------
I ♥ Delphi
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

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

AW: Client<>Socket Chat Problem

  Alt 30. Jan 2014, 18:16
Wäre noch die Frage, was du im OI eingestellt hast.
Aber um ein Fehler in Deinem Programm auszuschließen, such dir mal Programme mit ähnlichen Funktionen und ob es bei denen klappt, oder besser noch, substituiere eines deiner Programme mit einem funktionierenden anderen Programm (z.B. Client --> Telnet) und teste.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
nuclearping

Registriert seit: 7. Jun 2008
708 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

AW: Client<>Socket Chat Problem

  Alt 31. Jan 2014, 01:24
Hat zwar nichts mit dem eigentlichen Problem zu tun, aber: ShowMessage('Please choose an another nickname.'); "Bitte wähle einen einen anderen Nickname"? Also entweder "an other" oder nur "another".
  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 13:32 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