<?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[Socket geschlossen nach recv]]></title><description><![CDATA[<p>Hallo Leute,<br />
ich wollte mir in C++ eine HTTP-Request-Klasse schreiben, mit welcher ich mir eine Website von einem Server abholen kann.</p>
<p>Ich poste es hier unter &quot;C++&quot;, da ich finde, dass es nicht direkt was mit der WinAPI und / bzw. mit einer Konsole zu tun hat.</p>
<p>Falls das dennoch falsch ist, bitte ich darum, den Thread zu verschieben und nicht zu löschen.</p>
<p>Code-Ausschnitte:</p>
<pre><code class="language-cpp">int connect() {
    this-&gt;sock=0;
    #ifndef linux //Nur für Windoof
        WSADATA w;
        if(WSAStartup(MAKEWORD(2,2), &amp;w) != 0)
        {
            //&quot;Winsock 2 konnte nicht gestartet werden!
            return 1;
        }
    #endif

    this-&gt;sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    if(this-&gt;sock == -1)
    {
        //&quot;Socket konnte nicht erstellt werden!&quot;
        return 1;
    }

    this-&gt;service.sin_family = AF_INET; // AF_INET für IPv4, für IPv6 wäre es AF_INET6
    this-&gt;service.sin_port = htons(this-&gt;port);
    this-&gt;service.sin_addr.s_addr = inet_addr(this-&gt;ip.c_str());

    if(int con = connect(this-&gt;sock, reinterpret_cast&lt;sockaddr*&gt;(&amp;this-&gt;service), sizeof(this-&gt;service))&gt;=0)
    {
       (void*) new HTTP_Request(this-&gt;sock,this-&gt;ip,this-&gt;page);
       (void*) new HTTP_Request(this-&gt;sock,this-&gt;ip,this-&gt;page); //!!! HIER GEHT ES NICHT MEHR!!!
        return 0;
    } else return 1;
}
</code></pre>
<p>Hier wird für Windows, welche ich zuzeit nutze, WSA gestartet, der Socket erstellt und zum Server verbunden und danach mein HTTP-Request durchgeführt.</p>
<p>Code-Ausschnitt</p>
<pre><code class="language-cpp">HTTP_Request::HTTP_Request(int sock,string ip,string page)
{
    //ctor
    string http_header= &quot;GET &quot;;
    http_header+=page;
    http_header+=&quot; HTTP/1.1\r\nHost: &quot;;
    http_header+=ip;
    http_header+=&quot;\r\n\r\n&quot;;
    const char* request = http_header.c_str();
    string response =&quot;&quot;;
    int size= strlen(request);
    char tmp;
    int bytesSent = 0; // Anzahl Bytes die wir bereits vom Buffer gesendet haben
    do
    {

        bytesSent += send(sock, request + bytesSent, size - bytesSent, 0);
       // cout &lt;&lt; bytesSent;
    } while(bytesSent &lt;  size);

    while (recv(sock, &amp;tmp, 1, 0) &gt; 0)
    {
       response+=tmp;
    }
    delete this;
}
</code></pre>
<p>Hier wird die GET-Anfrage an den Server geschickt und danach die Antwort wieder abgeholt.</p>
<p>Soweit so gut. Das funktioniert auch wunderbar, jedoch wird der zweite Request nicht durchgeführt. Zumindest bekomme ich keine Antwort.</p>
<p>Es funktionierte bei mir nur, wenn ich nach jedem Request den Socket geschlossen und danach wieder neu erstellt habe, jedoch leidet das total unter der Performance...</p>
<p>Meine Frage lautet:</p>
<p>1. Wird der Socket nach jedem send() &amp; recv() geschlossen?<br />
2. Weshalb kann ich den weiten Request nicht durchführen.<br />
3. Wie kann ich mehrere Requests durchführen, ohne den Socket immer wieder neu erstellen zu müssen?</p>
<p>Ich wäre sehr dankbar, wenn mir jemand weiterhelfen könnte.</p>
<p>Gruß<br />
c++--</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/292392/socket-geschlossen-nach-recv</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 02:57:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/292392.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 08 Sep 2011 18:05:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:05:31 GMT]]></title><description><![CDATA[<p>Hallo Leute,<br />
ich wollte mir in C++ eine HTTP-Request-Klasse schreiben, mit welcher ich mir eine Website von einem Server abholen kann.</p>
<p>Ich poste es hier unter &quot;C++&quot;, da ich finde, dass es nicht direkt was mit der WinAPI und / bzw. mit einer Konsole zu tun hat.</p>
<p>Falls das dennoch falsch ist, bitte ich darum, den Thread zu verschieben und nicht zu löschen.</p>
<p>Code-Ausschnitte:</p>
<pre><code class="language-cpp">int connect() {
    this-&gt;sock=0;
    #ifndef linux //Nur für Windoof
        WSADATA w;
        if(WSAStartup(MAKEWORD(2,2), &amp;w) != 0)
        {
            //&quot;Winsock 2 konnte nicht gestartet werden!
            return 1;
        }
    #endif

    this-&gt;sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    if(this-&gt;sock == -1)
    {
        //&quot;Socket konnte nicht erstellt werden!&quot;
        return 1;
    }

    this-&gt;service.sin_family = AF_INET; // AF_INET für IPv4, für IPv6 wäre es AF_INET6
    this-&gt;service.sin_port = htons(this-&gt;port);
    this-&gt;service.sin_addr.s_addr = inet_addr(this-&gt;ip.c_str());

    if(int con = connect(this-&gt;sock, reinterpret_cast&lt;sockaddr*&gt;(&amp;this-&gt;service), sizeof(this-&gt;service))&gt;=0)
    {
       (void*) new HTTP_Request(this-&gt;sock,this-&gt;ip,this-&gt;page);
       (void*) new HTTP_Request(this-&gt;sock,this-&gt;ip,this-&gt;page); //!!! HIER GEHT ES NICHT MEHR!!!
        return 0;
    } else return 1;
}
</code></pre>
<p>Hier wird für Windows, welche ich zuzeit nutze, WSA gestartet, der Socket erstellt und zum Server verbunden und danach mein HTTP-Request durchgeführt.</p>
<p>Code-Ausschnitt</p>
<pre><code class="language-cpp">HTTP_Request::HTTP_Request(int sock,string ip,string page)
{
    //ctor
    string http_header= &quot;GET &quot;;
    http_header+=page;
    http_header+=&quot; HTTP/1.1\r\nHost: &quot;;
    http_header+=ip;
    http_header+=&quot;\r\n\r\n&quot;;
    const char* request = http_header.c_str();
    string response =&quot;&quot;;
    int size= strlen(request);
    char tmp;
    int bytesSent = 0; // Anzahl Bytes die wir bereits vom Buffer gesendet haben
    do
    {

        bytesSent += send(sock, request + bytesSent, size - bytesSent, 0);
       // cout &lt;&lt; bytesSent;
    } while(bytesSent &lt;  size);

    while (recv(sock, &amp;tmp, 1, 0) &gt; 0)
    {
       response+=tmp;
    }
    delete this;
}
</code></pre>
<p>Hier wird die GET-Anfrage an den Server geschickt und danach die Antwort wieder abgeholt.</p>
<p>Soweit so gut. Das funktioniert auch wunderbar, jedoch wird der zweite Request nicht durchgeführt. Zumindest bekomme ich keine Antwort.</p>
<p>Es funktionierte bei mir nur, wenn ich nach jedem Request den Socket geschlossen und danach wieder neu erstellt habe, jedoch leidet das total unter der Performance...</p>
<p>Meine Frage lautet:</p>
<p>1. Wird der Socket nach jedem send() &amp; recv() geschlossen?<br />
2. Weshalb kann ich den weiten Request nicht durchführen.<br />
3. Wie kann ich mehrere Requests durchführen, ohne den Socket immer wieder neu erstellen zu müssen?</p>
<p>Ich wäre sehr dankbar, wenn mir jemand weiterhelfen könnte.</p>
<p>Gruß<br />
c++--</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116887</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116887</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:05:31 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:13:00 GMT]]></title><description><![CDATA[<p>Warum machst du im Ctor ein delete this;? Das ist schon mal Käse.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116891</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:13:00 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:19:45 GMT]]></title><description><![CDATA[<p>314159265358979 schrieb:</p>
<blockquote>
<p>Warum machst du im Ctor ein delete this;? Das ist schon mal Käse.</p>
</blockquote>
<p>Ich wollte das Request-Object nach dem Request löschen lassen.<br />
Aber das ist ja nicht das Problem, die Zeile rauszunehmen.</p>
<p>Meine Probleme sind eher die Fragen, welche ich oben postete.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116898</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116898</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:19:45 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:28:01 GMT]]></title><description><![CDATA[<p>Ich würde dir empfehlen, eine Bibliothek dafür zu verwenden. Da wäre z.B. curl oder für Sockets alleine boost::asio zu nennen. Die Frickelei mit der C-API ist halt ziemlich fehleranfällig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116903</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116903</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:28:01 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:35:22 GMT]]></title><description><![CDATA[<p>c++-- schrieb:</p>
<blockquote>
<p>1. Wird der Socket nach jedem send() &amp; recv() geschlossen?</p>
</blockquote>
<p>Nein.</p>
<p>c++-- schrieb:</p>
<blockquote>
<p>2. Weshalb kann ich den weiten Request nicht durchführen.</p>
</blockquote>
<p>Vermutlich trennt der Server die Verbindung. Das kannst du ja schon an der Bedingung der while-Schleife erkennen. recv() würde blockieren, wenn der Server die Verbindung nicht schließen würde.</p>
<p>c++-- schrieb:</p>
<blockquote>
<p>3. Wie kann ich mehrere Requests durchführen, ohne den Socket immer wieder neu erstellen zu müssen?</p>
</blockquote>
<p>Eventuell kannst du da am HTTP-Protokoll was drehen. connection: Keep-Alive oder so etwas in der Art. Aber Performanceeinbußen? Was willst du denn da programmieren?</p>
<p>Edit:<br />
Ich sehe, du nutzt HTTP/1.1? Da sollten alle Verbindungen automatisch &quot;keep-alive&quot; sein. Doch deine Schleife wartet halt so lange, bis der Server die Verbindung schließt. Deshalb auch die Performanceprobleme bei neuen Verbindungen, du musst jedes mal auf ein ~15 Sekunden timeout warten. Nutze HTTP/1.0 oder überprüfe beim Empfangen ob du alles hast.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116905</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116905</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:35:22 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:32:14 GMT]]></title><description><![CDATA[<p>314159265358979 schrieb:</p>
<blockquote>
<p>Ich würde dir empfehlen, eine Bibliothek dafür zu verwenden. Da wäre z.B. curl oder für Sockets alleine boost::asio zu nennen. Die Frickelei mit der C-API ist halt ziemlich fehleranfällig.</p>
</blockquote>
<p>Hey,<br />
sowas hatte ich mir auch schon überlegt, aber ich wollte mir eine eigene Klasse dazu schreiben.<br />
Und jetzt einfach aufzuhören und eine fertige Bibliothek zu verwenden, bringt in meinen Augen wenig, da ich dann ja nichts dazu lerne und nicht weiß, wo/wie mein Fehler war.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116906</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116906</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:32:14 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:39:27 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>c++-- schrieb:</p>
<blockquote>
<p>1. Wird der Socket nach jedem send() &amp; recv() geschlossen?</p>
</blockquote>
<p>Nein.</p>
<p>c++-- schrieb:</p>
<blockquote>
<p>2. Weshalb kann ich den weiten Request nicht durchführen.</p>
</blockquote>
<p>Vermutlich trennt der Server die Verbindung. Das kannst du ja schon an der Bedingung der while-Schleife erkennen. recv() würde blockieren, wenn der Server die Verbindung nicht schließen würde.</p>
<p>c++-- schrieb:</p>
<blockquote>
<p>3. Wie kann ich mehrere Requests durchführen, ohne den Socket immer wieder neu erstellen zu müssen?</p>
</blockquote>
<p>Eventuell kannst du da am HTTP-Protokoll was drehen. connection: Keep-Alive oder so etwas in der Art. Aber Performanceeinbußen? Was willst du denn da programmieren?</p>
</blockquote>
<p>Danke für die Antworten!<br />
Mir fällt da gerade ein, das im Antwort-Header sowas in der Art stand:<br />
&quot;Connection: close&quot;.</p>
<p>Das würde mir 3tens beantworten. Das werde ich ausprobieren, Danke!</p>
<p>Wenn ich das Programm starte, dauert es erstmal so 3-5 Sekunden bevor der Request gesendet wird. Ich vermute dass WSA-Startup oder das connect() eine Weile braucht, weil dieser Nebeneffekt auch auftrat, als ich den Socket immer wieder neu erstellte.</p>
<p>Ich dachte noch nicht an ein konkretes Programm, sondern nur an eine Klasse, womit ich mir eine Website abholen kann, z.B. für einen HTTP-Chat.</p>
<p>Gruß</p>
<p>EDIT:</p>
<blockquote>
<p>Connection<br />
Der Connection-Header gibt an, ob die Verbindung nach der Transaktion aufrecht erhalten werden soll (keep-alive) oder nicht (close). Bei HTTP 1.0 werden Verbindungen standardmäßig geschlossen. Soll die Verbindung dennoch geöffnet bleiben, muss keep-alive als Wert angegeben werden. HTTP 1.1 verwendet jedoch persistente (aufrechterhaltende) Verbindungen. Damit die Verbindung hier dennoch geschlossen wird, muss close als Wert angegeben werden. Beispiel:<br />
Connection: keep-alive</p>
</blockquote>
<p>Quelle: <a href="http://www.html-world.de/program/http_4.php" rel="nofollow">http://www.html-world.de/program/http_4.php</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116908</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:39:27 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:37:55 GMT]]></title><description><![CDATA[<p>Der Teil, der wohl am längsten dauert, ist das resolven des Hosts. Ich würde das in eine eigene Funktion auslagern und im Konstruktor nur irgend ne IP-Klasse als Parameter akzeptieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116909</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116909</guid><dc:creator><![CDATA[314159265358979]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:37:55 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:41:17 GMT]]></title><description><![CDATA[<p>314159265358979 schrieb:</p>
<blockquote>
<p>Der Teil, der wohl am längsten dauert, ist das resolven des Hosts. Ich würde das in eine eigene Funktion auslagern und im Konstruktor nur irgend ne IP-Klasse als Parameter akzeptieren.</p>
</blockquote>
<p>Ich übergebe in meinen Programm vorerst nur die IP-Adresse und nutze dann</p>
<pre><code class="language-cpp">inet_addr();
</code></pre>
<p>Oder wie meinst du das jetzt?</p>
<p>GRuß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116910</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116910</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:41:17 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:49:29 GMT]]></title><description><![CDATA[<p>c++-- schrieb:</p>
<blockquote>
<p>Oder wie meinst du das jetzt?</p>
</blockquote>
<p>Er hat wohl an gethostbyname() und Konsorten gedacht, die eine DNS-Anfrage machen müssen.<br />
Deinen Beitrag oben zu meinem Kommentar verstehe ich nicht ganz, hast du das Problem jetzt gelöst?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116916</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:49:29 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:51:27 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>c++-- schrieb:</p>
<blockquote>
<p>Oder wie meinst du das jetzt?</p>
</blockquote>
<p>Er hat wohl an gethostbyname() und Konsorten gedacht, die eine DNS-Anfrage machen müssen.<br />
Deinen Beitrag oben zu meinem Kommentar verstehe ich nicht ganz, hast du das Problem jetzt gelöst?</p>
</blockquote>
<p>Nicht ganz <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>Also Antwort bekomme ich jetzt:</p>
<pre><code>HTTP/1.1 200 OK
Date: Thu, 08 Sep 2011 18:49:15 GMT
Server: Apache/2.2.17 (Win32) PHP/5.3.5
X-Powered-By: PHP/5.3.5
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Last-Modified: Thu, 08 Sep 2011 18:49:15 GMT
Cache-Control: no-store, no-cache, must-revalidate
Cache-Control: post-check=0, pre-check=0
Pragma: no-cache
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html
</code></pre>
<p>Jedoch wird das 2te HTTP-Request dann wieder nicht ausgeführt <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>Noch eine Idee?</p>
<p>GRuß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116918</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:51:27 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 18:57:49 GMT]]></title><description><![CDATA[<p>c++-- schrieb:</p>
<blockquote>
<p>Noch eine Idee?</p>
</blockquote>
<p>Nein, aber meine alten Ideen gelten weiterhin. Solange du eine Anfrage auf HTTP/1.1 machst, wird die Verbindung wohl am Leben gehalten. Da deine Schleife solange empfängt, bis die Verbindung geschlossen wird, musst du jedes Mal auf das Timeout warten.<br />
Vermutlich ist die beste Lösung für dich einfach HTTP/1.0 zu nutzen. Da kannst du dann so wie jetzt empfangen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116924</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Thu, 08 Sep 2011 18:57:49 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 19:07:40 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>c++-- schrieb:</p>
<blockquote>
<p>Noch eine Idee?</p>
</blockquote>
<p>Nein, aber meine alten Ideen gelten weiterhin. Solange du eine Anfrage auf HTTP/1.1 machst, wird die Verbindung wohl am Leben gehalten. Da deine Schleife solange empfängt, bis die Verbindung geschlossen wird, musst du jedes Mal auf das Timeout warten.<br />
Vermutlich ist die beste Lösung für dich einfach HTTP/1.0 zu nutzen. Da kannst du dann so wie jetzt empfangen.</p>
</blockquote>
<p>Ok. Ich habe jetzt die &quot;Connection: close&quot; gesetzt.<br />
Damit ist nach einem Request schluss.</p>
<p>Ich dachte mir jetzt, wenn die Verbindung geschlossen wird, dann müsste ich doch per &quot;connect()&quot; diese wieder aufbauen können und einen neuen Request absetzen, oder?</p>
<pre><code class="language-cpp">(void*) new HTTP_Request(this-&gt;sock,this-&gt;ip,this-&gt;page);
connect(this-&gt;sock, reinterpret_cast&lt;sockaddr*&gt;(&amp;this-&gt;service), sizeof(this-&gt;service));
(void*) new HTTP_Request(this-&gt;sock,this-&gt;ip,this-&gt;page);
</code></pre>
<p>Jedoch funktioniert das genauso wenig?!</p>
<p>GRuß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116935</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 19:07:40 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 19:12:39 GMT]]></title><description><![CDATA[<p>Tja.. den Socket musst du wahrscheinlich schließen und dann einen neuen erstellen.</p>
<p>(Und nur so am Rande.. was ist das für eine komische Aktion mit dem &quot;(void*) new HTTP_Request&quot; und dem delete im Konstruktor? Bitte ändere das! :))</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116939</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116939</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Thu, 08 Sep 2011 19:12:39 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 19:20:14 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Tja.. den Socket musst du wahrscheinlich schließen und dann einen neuen erstellen.</p>
<p>(Und nur so am Rande.. was ist das für eine komische Aktion mit dem &quot;(void*) new HTTP_Request&quot; und dem delete im Konstruktor? Bitte ändere das! :))</p>
</blockquote>
<p>Ok.<br />
Das habe ich bereits geändert.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116945</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116945</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 19:20:14 GMT</pubDate></item><item><title><![CDATA[Reply to Socket geschlossen nach recv on Thu, 08 Sep 2011 20:21:17 GMT]]></title><description><![CDATA[<p>So, es funktioniert jetzte!</p>
<p>Ich danke allen!</p>
<p>Gruß und schönes Wochenende noch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2116980</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2116980</guid><dc:creator><![CDATA[c++-- 3]]></dc:creator><pubDate>Thu, 08 Sep 2011 20:21:17 GMT</pubDate></item></channel></rss>