<?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[Eigenen ICQ-Login-Proxy programmieren]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe es mir zur Aufgabe gemacht, einen kleinen Proxy zu schreiben, welcher beim Login aktiv sein soll.</p>
<p>Ich habe herausgefunden, dass beim Einloggen in ICQ beim Klick auf den Button &quot;Verbinden&quot; nicht sofort die Userdaten mitgeschickt werden, sondern erst mal der Server angepingt wird (wahrscheinlich um zu testen, ob eine Verbindung überhaupt möglich ist).<br />
Daraus schließe ich, dass das ICQ-Programm dann solange wartet, bis es vom ICQ-Server eine Bestätigung bekommt.<br />
Das stimmt auch, denn ich habe mal aus Spaß einfach eine &quot;1&quot; als Bestätigung zurückgeschickt, und ICQ gab eine Fehlermeldung aus, dass die Verbindung fehlgeschlagen ist.</p>
<p>Hier der Ablauf:<br />
- Proxy wird hochgefahren und wartet auf eingehende Sockets<br />
- Nun ändert man bei den Verbindungseinstellungen von ICQ den Server von &quot;<a href="http://login.icq.com" rel="nofollow">login.icq.com</a>&quot; auf &quot;127.0.0.1&quot; und loggt sich in ICQ ein<br />
- der Proxy reagiert dann und pingt mit einem neuen Socket den ICQ-Server (<a href="http://login.icq.com" rel="nofollow">login.icq.com</a>) an<br />
- nun wartet der Proxy, bis der ICQ-Server antwortet<br />
- diese Antwort schickt der Proxy dann sofort an den ICQ-User weiter</p>
<p><strong>Nun ist jedoch mein Problem, dass das ICQ-Programm auch nicht auf die von mir weitergeleitete ICQ-Server-Anwort reagiert, sondern weiterhin blockiert...wieso???</strong></p>
<p>Ich hoffe mir kann jemand helfen!<br />
Viele Grüße<br />
Gapa</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/231583/eigenen-icq-login-proxy-programmieren</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 19:04:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/231583.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Jan 2009 22:16:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Mon, 12 Jan 2009 22:17:43 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe es mir zur Aufgabe gemacht, einen kleinen Proxy zu schreiben, welcher beim Login aktiv sein soll.</p>
<p>Ich habe herausgefunden, dass beim Einloggen in ICQ beim Klick auf den Button &quot;Verbinden&quot; nicht sofort die Userdaten mitgeschickt werden, sondern erst mal der Server angepingt wird (wahrscheinlich um zu testen, ob eine Verbindung überhaupt möglich ist).<br />
Daraus schließe ich, dass das ICQ-Programm dann solange wartet, bis es vom ICQ-Server eine Bestätigung bekommt.<br />
Das stimmt auch, denn ich habe mal aus Spaß einfach eine &quot;1&quot; als Bestätigung zurückgeschickt, und ICQ gab eine Fehlermeldung aus, dass die Verbindung fehlgeschlagen ist.</p>
<p>Hier der Ablauf:<br />
- Proxy wird hochgefahren und wartet auf eingehende Sockets<br />
- Nun ändert man bei den Verbindungseinstellungen von ICQ den Server von &quot;<a href="http://login.icq.com" rel="nofollow">login.icq.com</a>&quot; auf &quot;127.0.0.1&quot; und loggt sich in ICQ ein<br />
- der Proxy reagiert dann und pingt mit einem neuen Socket den ICQ-Server (<a href="http://login.icq.com" rel="nofollow">login.icq.com</a>) an<br />
- nun wartet der Proxy, bis der ICQ-Server antwortet<br />
- diese Antwort schickt der Proxy dann sofort an den ICQ-User weiter</p>
<p><strong>Nun ist jedoch mein Problem, dass das ICQ-Programm auch nicht auf die von mir weitergeleitete ICQ-Server-Anwort reagiert, sondern weiterhin blockiert...wieso???</strong></p>
<p>Ich hoffe mir kann jemand helfen!<br />
Viele Grüße<br />
Gapa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644209</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644209</guid><dc:creator><![CDATA[Gapa]]></dc:creator><pubDate>Mon, 12 Jan 2009 22:17:43 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Mon, 12 Jan 2009 22:20:19 GMT]]></title><description><![CDATA[<p>1. mit deiner beschreibung kann man nicht viel anfangen. du musst schon den problematischen code herzeigen.<br />
2. falsches forum. hier geht es um c++ (die programmiersprache), nicht um icq oder proxies</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644213</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644213</guid><dc:creator><![CDATA[mein papa]]></dc:creator><pubDate>Mon, 12 Jan 2009 22:20:19 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Mon, 12 Jan 2009 22:32:09 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>hier etwas Code:</p>
<p>Header:</p>
<pre><code>//Management.h

#ifndef MANAGEMENT_H
#define MANAGEMENT_H

#include &lt;iostream&gt;
#include &quot;windows.h&quot;
#include &quot;winsock.h&quot;

class Management
{
  private:
    WSADATA wsa;
    SOCKADDR_IN main, icq_server;
    long handle;
    SOCKET sock_main, sock_icq_server, sock_icq_client;
    char data_send[1000], data_receive[1000];

  public:
    Management();
    ~Management();
    void Start();
};

#endif
</code></pre>
<p>Cpp:</p>
<pre><code>//Management.cpp

#include &quot;Management.h&quot;

using namespace std;

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//---Konstruktor---

Management::Management()
{
  memset(&amp;wsa, 0, sizeof(WSADATA));
  memset(&amp;main, 0, sizeof(SOCKADDR));
  memset(&amp;icq_server, 0, sizeof(SOCKADDR));
  memset(&amp;handle, 0, sizeof(handle));
  memset(&amp;sock_main, 0, sizeof(SOCKET));
  memset(&amp;sock_icq_server, 0, sizeof(SOCKET));
  memset(&amp;sock_icq_client, 0, sizeof(SOCKET));
  memset(&amp;data_send, 0, sizeof(data_send));
  memset(&amp;data_receive, 0, sizeof(data_receive));

  main.sin_port = htons(5190);
  main.sin_family = AF_INET;
  main.sin_addr.s_addr = ADDR_ANY;
  //main.sin_addr.s_addr = inet_addr(&quot;127.0.0.1&quot;);

  icq_server.sin_port = htons(5190);
  icq_server.sin_family = AF_INET;
  icq_server.sin_addr.s_addr = inet_addr(&quot;64.12.161.153&quot;);
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//---Destruktor---

Management::~Management()
{
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//---Connect---

void Management::Start()
{
  handle = WSAStartup(MAKEWORD(2,2), &amp;wsa);
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler! WinSock konnte nicht gestartet werden!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
   return;
  }
  cout &lt;&lt; &quot;WinSock gestartet!\n&quot;; 

  sock_main = socket(AF_INET, SOCK_STREAM, 0);
  if(sock_main == INVALID_SOCKET)
  {
    cout &lt;&lt; &quot;Fehler! Main-Socket konnte nicht erstellt werden!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
   return;
  }
  cout &lt;&lt; &quot;Socket erstellt!\n&quot;;

  handle = bind(sock_main, (SOCKADDR*)&amp;main, sizeof(SOCKADDR));
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler! Main-Socket konnte nicht an Server gebunden werden!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
   return;
  }
  cout &lt;&lt; &quot;Main-Socket wurde an Server gebunden!\n&quot;;

  handle = listen(sock_main, 10);
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler! Funktion 'listen' fehlgeschlagen!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
   return;
  }
  cout &lt;&lt; &quot;Server lauscht...\n&quot;;

  sock_icq_client = accept(sock_main, 0, 0);
  if(sock_icq_client == INVALID_SOCKET)
  {
    cout &lt;&lt; &quot;Fehler! Es konnte keine neue Verbindung eingegangen werden!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
   return;
  }

//////////

  cout &lt;&lt; &quot;Neue Verbindung akzeptiert!\n\n\n\nProtokoll:\n\n&quot;;

  sock_icq_server = socket(AF_INET, SOCK_STREAM, 0);
  if(sock_icq_server == INVALID_SOCKET)
  {
    cout &lt;&lt; &quot;Fehler! ICQ_Server_Socket konnte nicht erstellt werden!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
  }
  else
    cout &lt;&lt; &quot;Socket erstellt!\n&quot;;

  handle = connect(sock_icq_server, (SOCKADDR*)&amp;icq_server, sizeof(SOCKADDR));
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler! Verbindung zum ICQ_Server fehlgeschlagen!\nZum Beenden ENTER druecken...&quot;;
    system(&quot;pause&gt;nul&quot;);
   return;
  }

  cout &lt;&lt; &quot;Socket wurde mit ICQ_Server verbunden!&quot;;

  handle = recv(sock_icq_server, data_receive, 256, 0);
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler beim Empfangen von Datenpaketen!\nZum Beenden ENTER druecken...&quot;;
   return;
  }
  else if(handle == 0)
  {
    cout &lt;&lt; &quot;Gegenseite hat die Verbindung getrennt!\nZum Beenden ENTER druecken...&quot;;
   return;
  }
  data_receive[strlen(data_receive) + 1] = '\0';
  cout &lt;&lt; &quot;\nDaten wurden erfolgreich von ICQ_Server empfangen: &quot; &lt;&lt; data_receive;

  handle = send(sock_icq_client, data_receive, strlen(data_receive), 0);
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler beim Senden von Datenpaketen an ICQ_Client!\nZum Beenden ENTER druecken...&quot;;
   return;
  }

  cout &lt;&lt; &quot;\nDaten wurden erfolgreich an ICQ_Client gesendet: &quot; &lt;&lt; data_receive;

  handle = recv(sock_icq_client, data_receive, 256, 0);
  if(handle == SOCKET_ERROR)
  {
    cout &lt;&lt; &quot;Fehler beim Empfangen von Datenpaketen von ICQ_Client!\nZum Beenden ENTER druecken...&quot;;
   return;
  }
  else if(handle == 0)
  {
    cout &lt;&lt; &quot;ICQ_Client hat die Verbindung getrennt!\nZum Beenden ENTER druecken...&quot;;
   return;
  }
  data_receive[strlen(data_receive) + 1] = '\0';
  cout &lt;&lt; &quot;UserDaten: &quot; &lt;&lt; data_receive;
  system(&quot;pause&gt;nul&quot;);
 return;
}
</code></pre>
<p>Main:</p>
<pre><code>using namespace std;

int main(int argc, char *argv[])
{
  Management manager;
  manager.Start();
  system(&quot;pause&gt;nul&quot;);
 return 0;
}
</code></pre>
<p>Hoffe auf Hilfe!<br />
Gapa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644223</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644223</guid><dc:creator><![CDATA[Gapa]]></dc:creator><pubDate>Mon, 12 Jan 2009 22:32:09 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Mon, 12 Jan 2009 22:32:37 GMT]]></title><description><![CDATA[<p>Gapa schrieb:</p>
<blockquote>
<p>Nun ist jedoch mein Problem, dass das ICQ-Programm auch nicht auf die von mir weitergeleitete ICQ-Server-Anwort reagiert, sondern weiterhin blockiert...wieso???</p>
</blockquote>
<p>Ich kenne das ICQ-Protokoll nicht, aber evtl will es noch weitere Infos holen (z.B. Kontaktliste oder so)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644226</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644226</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Mon, 12 Jan 2009 22:32:37 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Mon, 12 Jan 2009 22:46:31 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<blockquote>
<p>Ich kenne das ICQ-Protokoll nicht, aber evtl will es noch weitere Infos holen (z.B. Kontaktliste oder so)?</p>
</blockquote>
<p>Ja aber wie denn? Ich hole doch stets alle Nachrichten vom ICQ-Server bzw. vom ICQ-Programm ab...<br />
Wenn man sich in ICQ einloggt, so wird, und das habe ich getestet indem ich mal versucht habe nach empfangenen Daten zu suchen, zuerst nur der ICQ-Server konnektiert ohne irgendwelchen Datentransfer...<br />
Daraus kann man also schließen, dass das ICQ-Programm auf eine Bestätigung vom ICQ-Server wartet.<br />
Also habe ich den Ping vom ICQ-Programm einfach weitergeleitet an den ICQ-Server und habe dann auf eine Antwort gewartet, welche ich dann auch gleich an das ICQ-Programm übergeben habe.<br />
Jedoch reagiert das ICQ-Programm immer noch nicht, aber wieso??<br />
Ich weiß immerhin schon, dass das ICQ-Programm nur auf diese vom Server stammenden Daten nicht reagiert. Schicke ich beispielsweise einen ASCII-String (beliebig) an das ICQ-Programm zurück, so kommt sofort die Fehlermeldung: &quot;Hoppla, da ist was schiefgelaufen&quot; (oder so ähnlich)...<br />
D.h, die Daten vom Server werden ja eig. richtig weitergeleitet...nur das ICQ-Programm macht dann nicht mehr weiter...!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></p>
<p>HILFE!<br />
Gapa</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644234</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644234</guid><dc:creator><![CDATA[Gapa]]></dc:creator><pubDate>Mon, 12 Jan 2009 22:46:31 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Tue, 13 Jan 2009 19:39:21 GMT]]></title><description><![CDATA[<p>Hm, tut mir Leid, aber ich hab noch eine Idee <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Und zwar kommt mir dein Nullterminieren vom vom Server empfangenen String komisch vor. Der Rückgabewert von recv gibt dir die Anzahl der Bytes zurück.<br />
Also ich würd's eher so machen:</p>
<pre><code class="language-cpp">handle = recv(sock_icq_server, data_receive, 256, 0);
  if(handle == SOCKET_ERROR)
      throw  &quot;Fehler beim Empfangen von Datenpaketen!\nZum Beenden ENTER druecken...&quot;;
  else if(handle == 0)
      throw &quot;Gegenseite hat die Verbindung getrennt!\nZum Beenden ENTER druecken...&quot;;

  // data_receive[strlen(data_receive) + 1] = '\0'; &lt;- Das hier weg
  cout &lt;&lt; &quot;\nDaten wurden erfolgreich von ICQ_Server empfangen: &quot; &lt;&lt; data_receive;

  handle = send(sock_icq_client, data_receive, handle /*&lt;- Genauso viele Bytes schicken wie empfangen*/, 0);
  if(handle == SOCKET_ERROR)
      throw &quot;Fehler beim Senden von Datenpaketen an ICQ_Client!\nZum Beenden ENTER druecken...&quot;;
</code></pre>
<p>PS: In C++ arbeitet man mit Exceptions <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
PPS: Dein Senden und Empfangen ist allgemein auch nicht so astrein, für ICQ-Login könnte es trotzdem reichen. Wenn du Interesse hast, könntest du dir das viel einfachere <a href="http://www.sfml-dev.org/tutorials/1.4/network-sockets.php" rel="nofollow">SFML</a> mal anschauen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
PPPS: Fangen kannst du die Exceptions etwa so:</p>
<pre><code class="language-cpp">int main()
{
    try
    {
         // Hier alles Zeugs rein
    }
    catch ( const char* e )
    {
        cout &lt;&lt; e &lt;&lt; endl;
    }
}
</code></pre>
<p>Sehr spätes Edit: Drakon hat natürlich Recht, eine Exception soll nur den Fehler beschreiben, also sollte das <code>&quot;\nZum Beenden ENTER druecken...&quot;</code> am Ende der Fehlerstrings weg und stattdessen bei der Ausgabe im catch in der main erscheinen (wenn überhaupt).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644243</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Tue, 13 Jan 2009 19:39:21 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Tue, 13 Jan 2009 10:31:03 GMT]]></title><description><![CDATA[<blockquote>
<p>PS: In C++ arbeitet man mit Exceptions</p>
</blockquote>
<p>So, wie du die da nutzt, bringt das aber nicht viel. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Wie will man den selbst drauf reagieren und bestimmen, was passiert, wenn du schon &quot;vorgibst&quot;, dass das Programm beendet wird? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Vor allem bei einem Netzwerkprogramm möchte ich nicht, dass, wenn halt mal etwas schief läuft (was ja mehr, als häufig vorkommt) ich das ganze Programm nochmal starten/konfigurieren muss. Einfach wieder alles abbrechen und dann fragen, ob er es nochmal versuchen soll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644400</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644400</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 13 Jan 2009 10:31:03 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Tue, 13 Jan 2009 12:38:56 GMT]]></title><description><![CDATA[<p>drakon schrieb:</p>
<blockquote>
<p>Wie will man den selbst drauf reagieren und bestimmen, was passiert, wenn du schon &quot;vorgibst&quot;, dass das Programm beendet wird? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
</blockquote>
<p>Exception heißt ja nicht, dass das Programm beendet wird. Hier ja, ist halt dem Original-Code nachempfunden.</p>
<p>drakon schrieb:</p>
<blockquote>
<p>Einfach wieder alles abbrechen und dann fragen, ob er es nochmal versuchen soll.</p>
</blockquote>
<p>Dann baust du halt noch eine Schleife irgendwo drum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644501</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644501</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Tue, 13 Jan 2009 12:38:56 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Tue, 13 Jan 2009 18:33:38 GMT]]></title><description><![CDATA[<p>Badestrand schrieb:</p>
<blockquote>
<p>drakon schrieb:</p>
<blockquote>
<p>Wie will man den selbst drauf reagieren und bestimmen, was passiert, wenn du schon &quot;vorgibst&quot;, dass das Programm beendet wird? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
</blockquote>
<p>Exception heißt ja nicht, dass das Programm beendet wird. Hier ja, ist halt dem Original-Code nachempfunden.</p>
</blockquote>
<p>Ja, aber deine Ausgabe mit &quot;Zum Beenden ENTER druecken...&quot; ist schon recht eindeutig. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Mir ist schon klar, dass dir der &quot;richtige&quot; Einsatz von exceptions schon klar ist, aber ich fand nur das Beispiel verkörpert überhaupt nicht den Fall, wie man ihn mit exceptions lösen sollte/kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644791</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 13 Jan 2009 18:33:38 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Tue, 13 Jan 2009 19:21:18 GMT]]></title><description><![CDATA[<p>drakon schrieb:</p>
<blockquote>
<p>[Ja, aber deine Ausgabe mit &quot;Zum Beenden ENTER druecken...&quot; ist schon recht eindeutig. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Ups, hatte den Fehlertext gar nicht großartig gelesen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>drakon schrieb:</p>
<blockquote>
<p>ich fand nur das Beispiel verkörpert überhaupt nicht den Fall, wie man ihn mit exceptions lösen sollte/kann.</p>
</blockquote>
<p>Meinst du das Anwendungsgebiet (also Sockets, verbinden/schicken/...)? Außer dass ich hier keine rohen Sockets benutzen würde, kann ich das nicht ganz nachvollziehen, wie würdest du hier denn die Fehlerbehandlung lösen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644838</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644838</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Tue, 13 Jan 2009 19:21:18 GMT</pubDate></item><item><title><![CDATA[Reply to Eigenen ICQ-Login-Proxy programmieren on Tue, 13 Jan 2009 19:27:44 GMT]]></title><description><![CDATA[<p>Badestrand schrieb:</p>
<blockquote>
<p>drakon schrieb:</p>
<blockquote>
<p>ich fand nur das Beispiel verkörpert überhaupt nicht den Fall, wie man ihn mit exceptions lösen sollte/kann.</p>
</blockquote>
<p>Meinst du das Anwendungsgebiet (also Sockets, verbinden/schicken/...)? Außer dass ich hier keine rohen Sockets benutzen würde, kann ich das nicht ganz nachvollziehen, wie würdest du hier denn die Fehlerbehandlung lösen?</p>
</blockquote>
<p>Nicht speziell darauf bezogen. Aber so Verbindungsfehler sind ja nicht wirklich selten. *Uups* Vergessen Router einzuschalten. Aber dann dafür nochmal das Programm starten will ich nicht müssen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Es war ja nur gesagt. Ich fand einfach das &quot;Zum Beenden ENTER druecken&quot; schon recht witzig in dem Zusammenhang. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1644842</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1644842</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Tue, 13 Jan 2009 19:27:44 GMT</pubDate></item></channel></rss>