<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Problem mit ServerSocket bzw. ClientSocket]]></title><description><![CDATA[<p>Hi,</p>
<p>hab mal versucht ein kleines ChatProgramm fürs interne Netzwerk zu erstellen. Habe jetzt nur folgendes Problem:</p>
<p>Der Server zeigt zwar die Messages in RichEdit an, die ich ihm aus dem Clienten (auch über ein RichEdit) sende, aber der Server sendet NICHTS<br />
an den Clienten!?!</p>
<p>Bin den Code jetzt schon zich mal durch gegangen (hab ihn auch mit nem Beispiel-Code verglichen), finde aber einfach keinen Fehler!!!</p>
<p>Hier mal einige ausschnitte:</p>
<pre><code class="language-cpp">void __fastcall TForm1::FileListenClick(TObject *Sender)
{
 FileListen-&gt;Checked = !FileListen-&gt;Checked;
 if(FileListen-&gt;Checked)
   {
    ClientSocket-&gt;Active =false;
    ServerSocket-&gt;Active =true;
    StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Checke Verbindung...&quot;;
   }
 else
   {
    if(ServerSocket-&gt;Active)
       ServerSocket-&gt;Active =false;
       StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;&quot;;
   }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ConnectButtonClick(TObject *Sender)
{
 if(ClientSocket-&gt;Active) ClientSocket-&gt;Active =false;

 if(InputQuery(&quot;Verbindung herstellen...&quot;, &quot;Bitte geben Sie den Server-Namen ein:&quot;, Server))
   {
    if(Server.Length() &gt; 0)
      {
       ClientSocket-&gt;Host   =Server;
       ClientSocket-&gt;Active =true;
      }
   }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ExitClick(TObject *Sender)
{
 ServerSocket-&gt;Close();
 ClientSocket-&gt;Close();
 Close();        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::SenderButtonClick(TObject *Sender)
{
 if (IsServer)
    ServerSocket-&gt;Socket-&gt;Connections[0]-&gt;SendText(RichEditEingabe-&gt;Lines-&gt;Strings[RichEditEingabe-&gt;Lines-&gt;Count - 1]);

 else
    ClientSocket-&gt;Socket-&gt;SendText(RichEditEingabe-&gt;Lines-&gt;Strings[RichEditEingabe-&gt;Lines-&gt;Count - 1]);

 Eingabe-&gt;Clear();

}
//---------------------------------------------------------------------------
void __fastcall TForm1::ServerSocketError(TObject* Sender,short number,AnsiString &amp;Description,int scode,const AnsiString Source,const AnsiString HelpFile,int HelpContext,Word &amp;CancelDisplay)
{
 ShowMessage(Description);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::DisconnectButtonClick(TObject *Sender)
{
 ClientSocket-&gt;Close();
 FileListenClick(NULL);        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketConnect(TObject* Sender, TCustomWinSocket* Socket)
{
 StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Verbunden mit Server: &quot; +Socket-&gt;RemoteHost;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketRead(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(Socket-&gt;ReceiveText());
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketClientRead(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(Socket-&gt;ReceiveText());
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketAccept(TObject* Sender, TCustomWinSocket* Socket)
{
 StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Verbunden mit Server: &quot; +Socket-&gt;RemoteAddress;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketClientConnect(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(&quot;Verbunden mit Server: &quot; +Server);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketDisconnected(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(&quot;Ihre Verbindung wurde getrennt&quot;);
 FileListenClick(NULL);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketError(TObject* Sender, TCustomWinSocket* Socket, TErrorEvent ErrorEvent, int &amp;ErrorCode)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(&quot;Keine Verbindung zum Server: &quot; +Server);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketClientDisconnect(TObject* Sender, TCustomWinSocket* Socket)
{
 ServerSocket-&gt;Active =false;
 FileListen-&gt;Checked = !FileListen-&gt;Checked;
 FileListenClick(NULL);
}
</code></pre>
<p>Könnt ihr mir vielleicht weiter helfen???<br />
Ich bin echt am verzweifeln!!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/106976/problem-mit-serversocket-bzw-clientsocket</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Jul 2026 10:35:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/106976.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 15 Apr 2005 06:34:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Fri, 15 Apr 2005 06:34:42 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>hab mal versucht ein kleines ChatProgramm fürs interne Netzwerk zu erstellen. Habe jetzt nur folgendes Problem:</p>
<p>Der Server zeigt zwar die Messages in RichEdit an, die ich ihm aus dem Clienten (auch über ein RichEdit) sende, aber der Server sendet NICHTS<br />
an den Clienten!?!</p>
<p>Bin den Code jetzt schon zich mal durch gegangen (hab ihn auch mit nem Beispiel-Code verglichen), finde aber einfach keinen Fehler!!!</p>
<p>Hier mal einige ausschnitte:</p>
<pre><code class="language-cpp">void __fastcall TForm1::FileListenClick(TObject *Sender)
{
 FileListen-&gt;Checked = !FileListen-&gt;Checked;
 if(FileListen-&gt;Checked)
   {
    ClientSocket-&gt;Active =false;
    ServerSocket-&gt;Active =true;
    StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Checke Verbindung...&quot;;
   }
 else
   {
    if(ServerSocket-&gt;Active)
       ServerSocket-&gt;Active =false;
       StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;&quot;;
   }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ConnectButtonClick(TObject *Sender)
{
 if(ClientSocket-&gt;Active) ClientSocket-&gt;Active =false;

 if(InputQuery(&quot;Verbindung herstellen...&quot;, &quot;Bitte geben Sie den Server-Namen ein:&quot;, Server))
   {
    if(Server.Length() &gt; 0)
      {
       ClientSocket-&gt;Host   =Server;
       ClientSocket-&gt;Active =true;
      }
   }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ExitClick(TObject *Sender)
{
 ServerSocket-&gt;Close();
 ClientSocket-&gt;Close();
 Close();        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::SenderButtonClick(TObject *Sender)
{
 if (IsServer)
    ServerSocket-&gt;Socket-&gt;Connections[0]-&gt;SendText(RichEditEingabe-&gt;Lines-&gt;Strings[RichEditEingabe-&gt;Lines-&gt;Count - 1]);

 else
    ClientSocket-&gt;Socket-&gt;SendText(RichEditEingabe-&gt;Lines-&gt;Strings[RichEditEingabe-&gt;Lines-&gt;Count - 1]);

 Eingabe-&gt;Clear();

}
//---------------------------------------------------------------------------
void __fastcall TForm1::ServerSocketError(TObject* Sender,short number,AnsiString &amp;Description,int scode,const AnsiString Source,const AnsiString HelpFile,int HelpContext,Word &amp;CancelDisplay)
{
 ShowMessage(Description);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::DisconnectButtonClick(TObject *Sender)
{
 ClientSocket-&gt;Close();
 FileListenClick(NULL);        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketConnect(TObject* Sender, TCustomWinSocket* Socket)
{
 StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Verbunden mit Server: &quot; +Socket-&gt;RemoteHost;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketRead(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(Socket-&gt;ReceiveText());
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketClientRead(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(Socket-&gt;ReceiveText());
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketAccept(TObject* Sender, TCustomWinSocket* Socket)
{
 StatusBar1-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Verbunden mit Server: &quot; +Socket-&gt;RemoteAddress;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketClientConnect(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(&quot;Verbunden mit Server: &quot; +Server);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketDisconnected(TObject* Sender, TCustomWinSocket* Socket)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(&quot;Ihre Verbindung wurde getrennt&quot;);
 FileListenClick(NULL);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ClientSocketError(TObject* Sender, TCustomWinSocket* Socket, TErrorEvent ErrorEvent, int &amp;ErrorCode)
{
 RichEditAusgabe-&gt;Lines-&gt;Add(&quot;Keine Verbindung zum Server: &quot; +Server);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ServerSocketClientDisconnect(TObject* Sender, TCustomWinSocket* Socket)
{
 ServerSocket-&gt;Active =false;
 FileListen-&gt;Checked = !FileListen-&gt;Checked;
 FileListenClick(NULL);
}
</code></pre>
<p>Könnt ihr mir vielleicht weiter helfen???<br />
Ich bin echt am verzweifeln!!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/767224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/767224</guid><dc:creator><![CDATA[Frau_Holle]]></dc:creator><pubDate>Fri, 15 Apr 2005 06:34:42 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Fri, 15 Apr 2005 06:41:37 GMT]]></title><description><![CDATA[<p>1. du solltest dir angewöhnen, wenn du ein problem hast und code postest, nur das nötige zu posten.<br />
würde mich verwundern wenn das hier mehr als 3 personen durchlesen.. oder sogar versuchen nachzuverfolgen.<br />
2. prüfe beim mal beim senden, ob die Connections[0] wirklich connected ist</p>
]]></description><link>https://www.c-plusplus.net/forum/post/767228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/767228</guid><dc:creator><![CDATA[BigNeal]]></dc:creator><pubDate>Fri, 15 Apr 2005 06:41:37 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Mon, 18 Apr 2005 13:42:07 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>kann das Problem aber nicht finden!?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/769475</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/769475</guid><dc:creator><![CDATA[Frau_Holle]]></dc:creator><pubDate>Mon, 18 Apr 2005 13:42:07 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Mon, 18 Apr 2005 13:44:37 GMT]]></title><description><![CDATA[<p>Debuggen... Rückgabewerte von Funktionen überprüfen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/769476</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/769476</guid><dc:creator><![CDATA[junix]]></dc:creator><pubDate>Mon, 18 Apr 2005 13:44:37 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Mon, 18 Apr 2005 16:32:55 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">ClientSocket-&gt;Active =true;
</code></pre>
<p>ist pöse pöse pöse !</p>
<p>Nimm lieber:</p>
<pre><code class="language-cpp">ClientSocket-&gt;Open()
</code></pre>
<p>Ich hab das mal vor Zeiten so gelöst:</p>
<pre><code class="language-cpp">for (i = 0;i &lt;= max;i++)  //Weiterleitung an alle verbundenen Clients
{
   if(ServerSocket1-&gt;Socket-&gt;Connections[i]-&gt;Connected)
   {
   ServerSocket1-&gt;Socket-&gt;Connections[i]-&gt;SendText(String(Time())+ &quot; &quot; +name+ &quot;: &quot;+Edit1-&gt;Text+endezeichen);
   }
}
</code></pre>
<p>Überprüfe erst den Verbindungsstatus bevor du schreibst !<br />
Der integer max wird bei OnConnect (letzte Instanz eines connects) hochgezählt und bei disconnect runtergezählt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/769598</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/769598</guid><dc:creator><![CDATA[Zero01]]></dc:creator><pubDate>Mon, 18 Apr 2005 16:32:55 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Tue, 19 Apr 2005 08:19:24 GMT]]></title><description><![CDATA[<p>Hi</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/6988">@Zero01</a>:</p>
<p>Habs mit dieser Lösung mal versucht, habe aber nach wie vor das Problem, das der Server nur empängt und der Client nur sendet. Wäre es evt. hilfreich, wenn ich das Prog in zwei einzelne Progs &quot;splitte&quot;, quasi ein Serverprog und ein Clientprog mache?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/770080</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/770080</guid><dc:creator><![CDATA[Frau_Holle]]></dc:creator><pubDate>Tue, 19 Apr 2005 08:19:24 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Tue, 19 Apr 2005 10:50:48 GMT]]></title><description><![CDATA[<p>Wird die Variable &quot;IsServer&quot; jemals &quot;true&quot;?<br />
Debuggen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/770207</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/770207</guid><dc:creator><![CDATA[epsilon]]></dc:creator><pubDate>Tue, 19 Apr 2005 10:50:48 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Tue, 19 Apr 2005 12:46:54 GMT]]></title><description><![CDATA[<p>Word epsilon !</p>
<p>Warum Frau Holle ? ob Client/Server in einem Prog oder zweien ist doch wurscht !<br />
Du solltest nur ne entsprechende Struktur/Logik erkennen und programmieren.</p>
<p>Ich stelle dir gerne meinen IRC clone zur Verfügung wenn du mal sehen willst wie sowas reibungslos funktioniert</p>
]]></description><link>https://www.c-plusplus.net/forum/post/770302</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/770302</guid><dc:creator><![CDATA[Zero01]]></dc:creator><pubDate>Tue, 19 Apr 2005 12:46:54 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit ServerSocket bzw. ClientSocket on Tue, 19 Apr 2005 18:35:01 GMT]]></title><description><![CDATA[<p>@Zero: Das wäre echt nett von dir, kannst du mir das mal per ICQ oder Email schicken?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/770606</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/770606</guid><dc:creator><![CDATA[Frau_Holle]]></dc:creator><pubDate>Tue, 19 Apr 2005 18:35:01 GMT</pubDate></item></channel></rss>