<?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[accept]]></title><description><![CDATA[<p>hallo ich komme mit den sockets in visual basic nicht so ganz klar.</p>
<p>ich habe drei pcs. der erste meldet sich an, das funktioniert dann soweit , dann meldet sich der zweite an. aber wenn ich nach der ip nachschaue kriege ich immer nur die ip des ersten clienten</p>
<p>[cpp]<br />
struct sockaddr_in sa;<br />
int iLen = sizeof(sa);<br />
UCHAR adresse[4];<br />
string ip;</p>
<p>for (int i=0;i&lt;=1;i++){<br />
clients[i].GetPeerName((SOCKADDR*)&amp;sa, &amp;iLen);</p>
<p>adresse[0]=sa.sin_addr.S_un.S_un_b.s_b1;<br />
adresse[1]=sa.sin_addr.S_un.S_un_b.s_b2;<br />
adresse[2]=sa.sin_addr.S_un.S_un_b.s_b3;<br />
adresse[3]=sa.sin_addr.S_un.S_un_b.s_b4;</p>
<p>ip=ListenSocket.toString(adresse[0])+&quot;.&quot;+ListenSocket.toString(adresse[1])+&quot;.&quot;+ListenSocket.toString(adresse[2])+&quot;.&quot;+ListenSocket.toString(adresse[3]);</p>
<p>ListenSocket.Accept(clients[i]);</p>
<p>}<br />
[cpp]</p>
<p>nachdem sich der erste client angemeldet hat kieg ich immer nur seine ip wenn sich der zweite anmeldet? was mach ich da falsch?<br />
möchte nämlich vorher wissen ob der zweite schon angemdelt ist oder nicht. wenn ja dann würde ich nämlich nicht mehr accept aufrufen.</p>
<p>wenn beide sich angemeldet haben kann ich auch beiden clienten eine nachricht schicken indem ich entweder über cliens[0] oder über clients[1] nachrichten verschicke.</p>
<p>ausserdem noch was, wofür ist bind() eigentlich gut?</p>
<p>brauch ich das hier?</p>
<p>viele dank für eure hilfe</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/170099/accept</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 09:07:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/170099.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 11 Jan 2007 19:31:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to accept on Thu, 11 Jan 2007 19:31:24 GMT]]></title><description><![CDATA[<p>hallo ich komme mit den sockets in visual basic nicht so ganz klar.</p>
<p>ich habe drei pcs. der erste meldet sich an, das funktioniert dann soweit , dann meldet sich der zweite an. aber wenn ich nach der ip nachschaue kriege ich immer nur die ip des ersten clienten</p>
<p>[cpp]<br />
struct sockaddr_in sa;<br />
int iLen = sizeof(sa);<br />
UCHAR adresse[4];<br />
string ip;</p>
<p>for (int i=0;i&lt;=1;i++){<br />
clients[i].GetPeerName((SOCKADDR*)&amp;sa, &amp;iLen);</p>
<p>adresse[0]=sa.sin_addr.S_un.S_un_b.s_b1;<br />
adresse[1]=sa.sin_addr.S_un.S_un_b.s_b2;<br />
adresse[2]=sa.sin_addr.S_un.S_un_b.s_b3;<br />
adresse[3]=sa.sin_addr.S_un.S_un_b.s_b4;</p>
<p>ip=ListenSocket.toString(adresse[0])+&quot;.&quot;+ListenSocket.toString(adresse[1])+&quot;.&quot;+ListenSocket.toString(adresse[2])+&quot;.&quot;+ListenSocket.toString(adresse[3]);</p>
<p>ListenSocket.Accept(clients[i]);</p>
<p>}<br />
[cpp]</p>
<p>nachdem sich der erste client angemeldet hat kieg ich immer nur seine ip wenn sich der zweite anmeldet? was mach ich da falsch?<br />
möchte nämlich vorher wissen ob der zweite schon angemdelt ist oder nicht. wenn ja dann würde ich nämlich nicht mehr accept aufrufen.</p>
<p>wenn beide sich angemeldet haben kann ich auch beiden clienten eine nachricht schicken indem ich entweder über cliens[0] oder über clients[1] nachrichten verschicke.</p>
<p>ausserdem noch was, wofür ist bind() eigentlich gut?</p>
<p>brauch ich das hier?</p>
<p>viele dank für eure hilfe</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208214</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208214</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Thu, 11 Jan 2007 19:31:24 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Thu, 11 Jan 2007 19:32:45 GMT]]></title><description><![CDATA[<p>hallo ich komme mit den sockets in visual basic nicht so ganz klar.</p>
<p>ich habe drei pcs. der erste meldet sich an, das funktioniert dann soweit , dann meldet sich der zweite an. aber wenn ich nach der ip nachschaue kriege ich immer nur die ip des ersten clienten</p>
<pre><code class="language-cpp">struct sockaddr_in sa;
int iLen = sizeof(sa);
UCHAR adresse[4];
string ip;

for (int i=0;i&lt;=1;i++){
clients[i].GetPeerName((SOCKADDR*)&amp;sa, &amp;iLen);

adresse[0]=sa.sin_addr.S_un.S_un_b.s_b1;
adresse[1]=sa.sin_addr.S_un.S_un_b.s_b2;
adresse[2]=sa.sin_addr.S_un.S_un_b.s_b3;
adresse[3]=sa.sin_addr.S_un.S_un_b.s_b4;

ip=ListenSocket.toString(adresse[0])+&quot;.&quot;+ListenSocket.toString(adresse[1])+&quot;.&quot;+ListenSocket.toString(adresse[2])+&quot;.&quot;+ListenSocket.toString(adresse[3]);

ListenSocket.Accept(clients[i]);

}
</code></pre>
<p>nachdem sich der erste client angemeldet hat kieg ich immer nur seine ip wenn sich der zweite anmeldet? was mach ich da falsch?<br />
möchte nämlich vorher wissen ob der zweite schon angemdelt ist oder nicht. wenn ja dann würde ich nämlich nicht mehr accept aufrufen.</p>
<p>wenn beide sich angemeldet haben kann ich auch beiden clienten eine nachricht schicken indem ich entweder über cliens[0] oder über clients[1] nachrichten verschicke.</p>
<p>ausserdem noch was, wofür ist bind() eigentlich gut?</p>
<p>brauch ich das hier?</p>
<p>viele dank für eure hilfe</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208219</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208219</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Thu, 11 Jan 2007 19:32:45 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Thu, 11 Jan 2007 20:20:57 GMT]]></title><description><![CDATA[<p>GetPeerName hat einen Rückgabewert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208265</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Thu, 11 Jan 2007 20:20:57 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Thu, 11 Jan 2007 21:09:36 GMT]]></title><description><![CDATA[<p>bin grade nicht zuhause am pc. was ist das denn für ein rückgabewert? ip als string?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208297</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208297</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Thu, 11 Jan 2007 21:09:36 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 10:54:03 GMT]]></title><description><![CDATA[<p>das ist ja nur ein int, der zeigt ob die verbindung zustande gekommen ist.<br />
was soll ich denn damit anfangen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208579</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208579</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Fri, 12 Jan 2007 10:54:03 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:07:47 GMT]]></title><description><![CDATA[<p>sockets schrieb:</p>
<blockquote>
<p>was soll ich denn damit anfangen?</p>
</blockquote>
<p>Prüfen wäre mal ein guter erster Schritt. Eine grundlegende Fehlerbehandlung kann jedenfalls nicht schaden, wenn man das Problem eingrenzen will.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208596</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208596</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:07:47 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:10:17 GMT]]></title><description><![CDATA[<p>gut, und danach? wie kriege ich die richtige ip adresse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208598</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208598</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:10:17 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:13:09 GMT]]></title><description><![CDATA[<p>sockets schrieb:</p>
<blockquote>
<p>gut, und danach? wie kriege ich die richtige ip adresse?</p>
</blockquote>
<p>GetPeerName gibt bei dir also immer TRUE zurück?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208600</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208600</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:13:09 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:20:09 GMT]]></title><description><![CDATA[<p>nicht ganz, eine 1 aber ich glaube das ist dazu äquivalent <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/1208607</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208607</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:20:09 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:25:07 GMT]]></title><description><![CDATA[<p>Wo steht denn dieser Code überhaupt?<br />
Was genau ist ListenSocket?<br />
Was liefert Accept zurück?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208613</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208613</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:25:07 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:33:39 GMT]]></title><description><![CDATA[<p>in der klasse die von casyncsocket abgeleitet ist steht die onaccept methode</p>
<pre><code class="language-cpp">void client::OnAccept(int nErrorCode)

    if (nErrorCode == 0) // Wenn keine Fehler auftreten, die Funktion zum Akzeptieren in der Dialogklasse aufrufen
        ((CNetzwerkClientKaSimDlg*)m_pWnd)-&gt;OnAkzeptieren();
}
</code></pre>
<p>diese ruft die methode onakzeptieren in der dialog klasse auf</p>
<pre><code class="language-cpp">void CNetzwerkClientKaSimDlg::OnAkzeptieren()    // Wird aufgerufen, wenn der Server eine Anfrage akzeptiert
{	

	struct sockaddr_in sa; 
	int iLen = sizeof(sa);
	UCHAR adresse[4];
	string ip;
	int result;

	int i;
	for (i=0;i&lt;=30;i++){
		clients[i].GetPeerName((SOCKADDR*)&amp;sa, &amp;iLen); 
		adresse[0]=sa.sin_addr.S_un.S_un_b.s_b1;
		adresse[1]=sa.sin_addr.S_un.S_un_b.s_b2;
		adresse[2]=sa.sin_addr.S_un.S_un_b.s_b3;
		adresse[3]=sa.sin_addr.S_un.S_un_b.s_b4;
		ip=ListenSocket.toString(adresse[0])+&quot;.&quot;+ListenSocket.toString(adresse[1])+&quot;.&quot;+ListenSocket.toString(adresse[2])+&quot;.&quot;+ListenSocket.toString(adresse[3]);

		if(ip==&quot;204.204.204.204&quot;){
			result=ListenSocket.Accept(clients[i]);
			break;
		}
	}

	for(int j=0;j&lt;=30;j++){
		if(j==i)
			j++;
		if(clients[j].GetPeerName((SOCKADDR*)&amp;sa, &amp;iLen)==clients[i].GetPeerName((SOCKADDR*)&amp;sa, &amp;iLen))
			clients[j].Close();
	}

}
</code></pre>
<p>ListeSocket ist ein<br />
[/cpp]<br />
class client : public CAsyncSocket<br />
[cpp]</p>
<p>accept liefert 1 zurück</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208621</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208621</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:33:39 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:41:31 GMT]]></title><description><![CDATA[<p>GetPeerName sollte erst dann etwas Sinnvolles liefern können, wenn du diesen Socket erfolgreich an Accept übergeben hast.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208627</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:41:31 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 11:52:22 GMT]]></title><description><![CDATA[<p>ja jetzt gehts, danke schön aber</p>
<p>woher weiss ich jetzt welche ips bereits eingetragen sind?</p>
<p>ich packe die clienten ja in ein array indem ich accept aufrufe.</p>
<p>wie kann ich dann auf ein objekt in einem array zugreifen und mir informationen darüber holen?</p>
<p>ich möchte dass sich ein client anmeldet und wenn der schon angemeldet war dann wieder austragen.</p>
<p>oder zb. das ganze array durchlaufen und alle angemeldeten clienten bzw akzeptierten clienten ausgeben können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208635</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208635</guid><dc:creator><![CDATA[sockets]]></dc:creator><pubDate>Fri, 12 Jan 2007 11:52:22 GMT</pubDate></item><item><title><![CDATA[Reply to accept on Fri, 12 Jan 2007 12:44:02 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile.php?mode=viewprofile&amp;u=403" rel="nofollow">HumeSikkins</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=15" rel="nofollow">C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=4" rel="nofollow">WinAPI</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1208674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1208674</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Fri, 12 Jan 2007 12:44:02 GMT</pubDate></item></channel></rss>