<?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[Übersetzen von Netzwerk Prog]]></title><description><![CDATA[<p>Kann mir bitte jemand das fogende Programm für Windows funktionsfähig machen? ich kenne mich leider mit Windowsnetzwerk nicht aus. am besten einfach den empfangenen Text mit einer MessageBox ausgeben.</p>
<pre><code class="language-cpp">/*
    ** listener.c -- a datagram sockets &quot;server&quot; demo
    */

    #include &lt;stdio.h&gt;
    #include &lt;stdlib.h&gt;
    #include &lt;unistd.h&gt;
    #include &lt;errno.h&gt;
    #include &lt;string.h&gt;
    #include &lt;sys/types.h&gt;
    #include &lt;sys/socket.h&gt;
    #include &lt;netinet/in.h&gt;
    #include &lt;arpa/inet.h&gt;

    #define MYPORT 4950    // the port users will be connecting to

    #define MAXBUFLEN 100

    int main(void)
    {
        int sockfd;
        struct sockaddr_in my_addr;    // my address information
        struct sockaddr_in their_addr; // connector's address information
        socklen_t addr_len;
	int numbytes;
        char buf[MAXBUFLEN];

        if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
            perror(&quot;socket&quot;);
            exit(1);
        }

        my_addr.sin_family = AF_INET;         // host byte order
        my_addr.sin_port = htons(MYPORT);     // short, network byte order
        my_addr.sin_addr.s_addr = INADDR_ANY; // automatically fill with my IP
        memset(&amp;(my_addr.sin_zero), '\0', 8); // zero the rest of the struct

        if (bind(sockfd, (struct sockaddr *)&amp;my_addr,
                                              sizeof(struct sockaddr)) == -1) {
            perror(&quot;bind&quot;);
            exit(1);
        }

        addr_len = sizeof(struct sockaddr);
        if ((numbytes=recvfrom(sockfd,buf, MAXBUFLEN-1, 0,
                           (struct sockaddr *)&amp;their_addr, &amp;addr_len)) == -1) {
            perror(&quot;recvfrom&quot;);
            exit(1);
        }
	//Das als MessageBox wenn ein Paket empfangen
        printf(&quot;got packet from %s\n&quot;,inet_ntoa(their_addr.sin_addr));
        printf(&quot;packet is %d bytes long\n&quot;,numbytes);
        buf[numbytes] = '\0';
        printf(&quot;packet contains \&quot;%s\&quot;\n&quot;,buf);
        close(sockfd);

        return 0;
    }
</code></pre>
<p>Ich hoffe jemand kriegt das hin. Vielen Dank im Voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/107557/übersetzen-von-netzwerk-prog</link><generator>RSS for Node</generator><lastBuildDate>Tue, 30 Jun 2026 02:14:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/107557.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 20 Apr 2005 15:24:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Übersetzen von Netzwerk Prog on Wed, 20 Apr 2005 15:24:56 GMT]]></title><description><![CDATA[<p>Kann mir bitte jemand das fogende Programm für Windows funktionsfähig machen? ich kenne mich leider mit Windowsnetzwerk nicht aus. am besten einfach den empfangenen Text mit einer MessageBox ausgeben.</p>
<pre><code class="language-cpp">/*
    ** listener.c -- a datagram sockets &quot;server&quot; demo
    */

    #include &lt;stdio.h&gt;
    #include &lt;stdlib.h&gt;
    #include &lt;unistd.h&gt;
    #include &lt;errno.h&gt;
    #include &lt;string.h&gt;
    #include &lt;sys/types.h&gt;
    #include &lt;sys/socket.h&gt;
    #include &lt;netinet/in.h&gt;
    #include &lt;arpa/inet.h&gt;

    #define MYPORT 4950    // the port users will be connecting to

    #define MAXBUFLEN 100

    int main(void)
    {
        int sockfd;
        struct sockaddr_in my_addr;    // my address information
        struct sockaddr_in their_addr; // connector's address information
        socklen_t addr_len;
	int numbytes;
        char buf[MAXBUFLEN];

        if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
            perror(&quot;socket&quot;);
            exit(1);
        }

        my_addr.sin_family = AF_INET;         // host byte order
        my_addr.sin_port = htons(MYPORT);     // short, network byte order
        my_addr.sin_addr.s_addr = INADDR_ANY; // automatically fill with my IP
        memset(&amp;(my_addr.sin_zero), '\0', 8); // zero the rest of the struct

        if (bind(sockfd, (struct sockaddr *)&amp;my_addr,
                                              sizeof(struct sockaddr)) == -1) {
            perror(&quot;bind&quot;);
            exit(1);
        }

        addr_len = sizeof(struct sockaddr);
        if ((numbytes=recvfrom(sockfd,buf, MAXBUFLEN-1, 0,
                           (struct sockaddr *)&amp;their_addr, &amp;addr_len)) == -1) {
            perror(&quot;recvfrom&quot;);
            exit(1);
        }
	//Das als MessageBox wenn ein Paket empfangen
        printf(&quot;got packet from %s\n&quot;,inet_ntoa(their_addr.sin_addr));
        printf(&quot;packet is %d bytes long\n&quot;,numbytes);
        buf[numbytes] = '\0';
        printf(&quot;packet contains \&quot;%s\&quot;\n&quot;,buf);
        close(sockfd);

        return 0;
    }
</code></pre>
<p>Ich hoffe jemand kriegt das hin. Vielen Dank im Voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/771411</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/771411</guid><dc:creator><![CDATA[__GoTo__]]></dc:creator><pubDate>Wed, 20 Apr 2005 15:24:56 GMT</pubDate></item><item><title><![CDATA[Reply to Übersetzen von Netzwerk Prog on Wed, 20 Apr 2005 16:04:22 GMT]]></title><description><![CDATA[<p>Da musste vermutlich gar nich viel ändern.<br />
Der Socket-Kram ist in &quot;winsock.h&quot; bzw. &quot;winsock2.h&quot; zu finden.<br />
Und Winsock muss erst noch initialisiert werden (WSAStartup()) und anschließend wieder freigegeben werden (WSACleanup())</p>
<p>Microsoft hat sich auch mit dem Portieren beschäftigt:<br />
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/porting_socket_applications_to_winsock.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/porting_socket_applications_to_winsock.asp</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/771447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/771447</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Wed, 20 Apr 2005 16:04:22 GMT</pubDate></item><item><title><![CDATA[Reply to Übersetzen von Netzwerk Prog on Thu, 21 Apr 2005 17:27:02 GMT]]></title><description><![CDATA[<p>Was muss ich denn WSAStartup() übergeben? was wird mit den zei parametern gemacht?<br />
Folgelndes steht in der winsock.h:<br />
int PASCAL WSAStartup(WORD,LPWSADATA);</p>
<p>Mein Prog sieht jetzt folgendermaßen aus:</p>
<pre><code class="language-cpp">/* 
    ** listener.c -- a datagram sockets &quot;server&quot; demo 
    */ 

#include &lt;iostream&gt;
#include &lt;stdlib.h&gt;
#include &lt;winsock.h&gt;

    #define MYPORT 4950    // the port users will be connecting to 

    #define MAXBUFLEN 100 
using namespace std;

int main(int argc, char *argv[])
{
WSAStartup();
   int sockfd; 
        struct sockaddr_in my_addr;    // my address information 
        struct sockaddr_in their_addr; // connector's address information 
        socklen_t addr_len; 
    int numbytes; 
        char buf[MAXBUFLEN]; 

        if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) { 
            perror(&quot;socket&quot;); 
            exit(1); 
        } 

        my_addr.sin_family = AF_INET;         // host byte order 
        my_addr.sin_port = htons(MYPORT);     // short, network byte order 
        my_addr.sin_addr.s_addr = INADDR_ANY; // automatically fill with my IP 
        memset(&amp;(my_addr.sin_zero), '\0', 8); // zero the rest of the struct 

        if (bind(sockfd, (struct sockaddr *)&amp;my_addr, 
                                              sizeof(struct sockaddr)) == -1) { 
            perror(&quot;bind&quot;); 
            exit(1); 
        } 

        addr_len = sizeof(struct sockaddr); 
        if ((numbytes=recvfrom(sockfd,buf, MAXBUFLEN-1, 0, 
                           (struct sockaddr *)&amp;their_addr, &amp;addr_len)) == -1) { 
            perror(&quot;recvfrom&quot;); 
            exit(1); 
        } 
    //Das als MessageBox wenn ein Paket empfangen 
        printf(&quot;got packet from %s\n&quot;,inet_ntoa(their_addr.sin_addr)); 
        printf(&quot;packet is %d bytes long\n&quot;,numbytes); 
        buf[numbytes] = '\0'; 
        printf(&quot;packet contains \&quot;%s\&quot;\n&quot;,buf); 
        close(sockfd);
        WSACleanup(); 
  system(&quot;PAUSE&quot;);	
  return 0;
}
</code></pre>
<p>Muss ich noch eine lib einbinden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/772307</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/772307</guid><dc:creator><![CDATA[nero-ex]]></dc:creator><pubDate>Thu, 21 Apr 2005 17:27:02 GMT</pubDate></item><item><title><![CDATA[Reply to Übersetzen von Netzwerk Prog on Thu, 21 Apr 2005 17:40:54 GMT]]></title><description><![CDATA[<p>lib: ws2_32.lib</p>
<pre><code class="language-cpp">WSADATA wsa;

WSAStartup(MAKEWORD(2,0),&amp;wsa);
</code></pre>
<p>..damit forderst du an, das du gerne Winsock Version 2.0 verwenden möchtest und kriegst in der WSADATA-Struktur noch irgendwelchen Kram geliefert, mit dem man z.B. prüfen könnte, ob Version 2.0 auch verfügbar ist..</p>
<p>Microsoft hat die ganzen Winsock Funktionen auch dokumentiert:<br />
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/wsastartup_2.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/wsastartup_2.asp</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/772316</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/772316</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Thu, 21 Apr 2005 17:40:54 GMT</pubDate></item></channel></rss>