AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TcpServer/TcpClient gehen nicht
Thema durchsuchen
Ansicht
Themen-Optionen

TcpServer/TcpClient gehen nicht

Offene Frage von "rayj"
Ein Thema von rayj · begonnen am 29. Dez 2005 · letzter Beitrag vom 15. Mai 2006
Antwort Antwort
rayj

Registriert seit: 18. Okt 2005
46 Beiträge
 
#1

TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 07:58
Hallo,
So ein Mist bei mir wollen die TcpServer/Client Komponenten nicht verbinden.

Delphi: Delphi 2005 (vcl)
Komponenten: TTcpServer und TTcpClient.
Port: 1000

Code:

Server:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
TcpServer.Active := false;
TcpServer.LocalPort := '1000';
TcpServer.Active := true;
end;

procedure TForm1.TcpServerAccept(Sender: TObject;
  ClientSocket: TCustomIpClient);
begin
lblTcpStatus.Caption := 'connected';
ClientSocket.Sendln('connected');
end;
Client:
Delphi-Quellcode:
procedure TForm2.cmdConnectClick(Sender: TObject);
begin
TcpClient.Close;
TcpClient.RemoteHost := eRemoteHost.Text;
TcpClient.RemotePort := '1000';
TcpClient.Connect;
end;
Das ganze bringt aber überhaupt nix Keine Fehler, nichts. Wenn ich ne falsche IP eingebe, hängt das Programm ne Weile, bei der richtigen IP (localhost, da läuft der Tcpserver ja) hängt er nicht, das beudetet ja dass er den Server erkannt.

Warum springt der dann nicht ins Accept Ereigniss?

Bitte helft mir.

MfG
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#2

Re: TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 08:31
Welche Indy-Version ist denn das?

Versuch mal LocalPort, bzw RemotePort durch Port und RemoteHost durch Host zu ersetzen. Und müsste beim Server das Ereigniss nicht OnConnect sein
  Mit Zitat antworten Zitat
rayj

Registriert seit: 18. Okt 2005
46 Beiträge
 
#3

Re: TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 08:37
Zitat von Thanatos81:
Welche Indy-Version ist denn das?

Versuch mal LocalPort, bzw RemotePort durch Port und RemoteHost durch Host zu ersetzen. Und müsste beim Server das Ereigniss nicht OnConnect sein
Ist nicht Indy...die normalen TTcpServer und TTcpClient im Tab Internet.

Beim Server gibts nur folgende Ereignisse:
OnAccept
OnCreateHandle
OnDestroyHandle
OnGetThread
OnListening
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#4

Re: TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 08:57
Ups, sorry, dann kann ich dir wohl leider nicht helfen. Mit denen habn ich noch nichts gemacht.
  Mit Zitat antworten Zitat
rayj

Registriert seit: 18. Okt 2005
46 Beiträge
 
#5

Re: TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 08:58
Zitat von Thanatos81:
Ups, sorry, dann kann ich dir wohl leider nicht helfen. Mit denen habn ich noch nichts gemacht.
Keine Sache, danke trotzdem ^^

Der Grund warum ich nicht die Indy Kompos verwende ist der, dass ich die neuen Indy 10 nicht mehr verstehe
Irgendwie fehlt mir nen IdPeerThreadManager oder sowas
  Mit Zitat antworten Zitat
rayj

Registriert seit: 18. Okt 2005
46 Beiträge
 
#6

Re: TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 12:07
Versuche das ganze nun trotzdem mit dem Indy TCPServer/Client

Soweit geht alles, nur, wie kann ich Strings mit dem IdTcpClient empfangen?
Der Server hat ein Ereigniss "OnExecute", der Client hat nichts dergleichen
Hat sich echt viel verschlechtert in Delphi 2005, schade dass wir nicht bei delphi 7 blieben..
  Mit Zitat antworten Zitat
Thanatos81
(Gast)

n/a Beiträge
 
#7

Re: TcpServer/TcpClient gehen nicht

  Alt 29. Dez 2005, 12:10
SChau mal in den ISDN-Anrufmonitor-Thread, ziemlich zum Schluss. Da hab ich ne Demo gepostet, sowohl als Indy9 als auch als Indy10.
  Mit Zitat antworten Zitat
th_bone

Registriert seit: 16. Jun 2004
172 Beiträge
 
Delphi 2005 Professional
 
#8

Re: TcpServer/TcpClient gehen nicht

  Alt 3. Jan 2006, 13:26
Hi,

im Client musst Du um einen String zu empfangen einen Timer einfügen, der dann etwa folgendes enthält:

(Bsp in Indy 10)

Delphi-Quellcode:
procedure TForm1.TimerGetMessage(Sender: TObject);
var
  Msg : String;
begin
  if not TCPClient.Connected then exit;

  // hier wird der gesendete String ausgelesen
  Msg := TCPClient.iohandler.ReadLn('', 5);
end;
beim Server sendest du die Anfrage des clients gleich im onexecute zurück...

Delphi-Quellcode:
procedure TForm1.tcpServerExecute(AContext: TIdContext);
var
  Msg : String;
begin

  // AnfrageString vom Clienten
  Msg := AContext.Connection.iohandler.ReadLn;

  // Antwort als String zum Client schicken
  if Msg='XYZthen Aconnection.IOHandler.WriteLn('Meine Antwort');
end;
Tschö

Ralf
  Mit Zitat antworten Zitat
_seeker

Registriert seit: 14. Mai 2006
Ort: Erika
22 Beiträge
 
Delphi 2005 Professional
 
#9

Re: TcpServer/TcpClient gehen nicht

  Alt 15. Mai 2006, 18:26
Eine frage, was muss ich tun? damit ich Aconnection benutzen kann?

MFG Damian
  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 17:16 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