Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Wechseln der ZielIP nicht möglich?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] [ 2 ] > 3 <
020
04.07.2007, 21:04 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Was verstehst du denn unter neue IP einfügen?

Ich bin mir jetzt nicht 100% sicher aber musst du vor dem connect nicht nochmal socket() aufrufen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
021
04.07.2007, 21:57 Uhr
~Horst
Gast


Naja, also das ist ja so.
Es gibt den struct für alle infos für den Socket z.B. eben die IP.
Diese Dinge binden sich dann an die Variable des Sockets indem man connect() aufruft.
Zumindest habe ich das so verstanden.
Und das mach ich halt, ich schliesse den Socket übergebe die IP auf den
Struct und connecte dann.

Und ich dachte mit diesem Plan würde ich durchkommen aber stattdessen macht
der Server so nen komischen blödsinn

Naja aber du hast recht, das habe ich ganz vergessen, jetzt kommen keine Fehler mehr...
Danke für den Hinweis!

Dennoch, dieses Serverausgabeproblem ist noch immer da ...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
022
04.07.2007, 22:00 Uhr
~Horst
Gast


Oh, ich verbessere mich, es bleiben alle errorcodes gleich bis auf:

beim Connect gibt es Errorcode : 10049 (Wir steigen auf )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
023
04.07.2007, 22:11 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)



Zitat:

Cannot assign requested address.
The requested address is not valid in its context. This normally results from an attempt to bind to an address that is not valid for the local computer. This can also result from connect, sendto, WSAConnect, WSAJoinLeaf, or WSASendTo when the remote address or port is not valid for a remote computer (for example, address or port 0).


Also wohl die Adresse falsch?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
024
04.07.2007, 22:29 Uhr
~Horst
Gast


Ja und ich habs raus wieso, ich habe ganz vergessen eine abfrage zu machen, wenn recv = 0 ist das er den Server wieder Accept machen lassen soll ...
Es tut, endlich, danke für eure Hilfe ganz ehrlich!

ABER jetzt stehe ich vor der Frage, wenn ich also jetzt recv offen hab und der da auf einen client wartet der Sendet.

Kann der in dem moment von jedem Client etwas bekommen?
Oder geht das nicht und das hat was mit dem Forken zu tun, was ich noch nicht
viel darüber gesehen habe !?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
025
04.07.2007, 23:24 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Da du mit verbindungsorientierten Sockets arbeitest hast du immer eine 1 zu 1 Verbindung. Ich glaube mit verbindungslosen Sockets gehts auch anders, aber hab ich noch nicht gemacht.

Aber genau dafür hat Flo ja oben den Tipp mit den Threads bzw. fork gegeben
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
026
05.07.2007, 22:38 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja
du hast immer N:1 Verbindungen beim Server, und 1:1 beim Client.

Auf dem Serversocket, das auf Listen steht, kann man immer nur "accepten", alles andere wird dann auf eine "kopie" des sockets weitergegeben, die dann die verbindung mit dem jeweiligen client darstellt. das geht (fast) beliebig oft. das Socket beim Client, welches das connect ausführt, ist aber natürlich "nur" das Socket, das die Verbindung zum Server darstellt.


Code:
Client1 <-> Server (verbunden)
Client2 <-> Server (verbunden)
Client3 <-> Server (verbunden)
        >>> Server (horchend)



Jedes Socket hat nen Empfangs und Sendepuffer, die reichen normalerweise aus um z.b in einer Schleife paar Hundert Clients nacheinander abzufragen, bzw wenn man threaded ggf auch mehrere gleichzeitig (bei multicore-prozessoren bzw multiprozessorsystemen)
--
class God : public ChuckNorris { };

Dieser Post wurde am 05.07.2007 um 22:38 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] > 3 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: