socketprob
-
Moin,
hab nen problem mit sockets, mein client socket versucht auf meinen server socket zu connecten, der akzetiert die verbindung auch aber der client sagt er wäre nich verbunden. Was hab ich falsch gemahct??//Code zum akzeptieren if (m_sServer1.Accept(m_sServer2)) { m_strOutput = "Verbindung Acceptiert\n"+m_strOutput; UpdateData(false); }
//code zum connecten if (m_sClient1.Connect("192.168.0.6", 4000)) { m_strOutput = "Verbunden\n"+m_strOutput; } else m_strOutput = "Nicht Verbunden\n"+m_strOutput; UpdateData(false);
mfg
Fabez
-
mh, also den Socket fehlercode hab ich rausgekriegt, der is 10035, der wie folgt definiert ist:
WSAEWOULDBLOCK: Ein nicht blockierender Socketvorgang konnte nicht sofort ausgeführt werdenund nu? ich hab schon ein paar themen gefunden wo der fehler auftrat, aht mir aber leider nich weitergeholfen...
-
Du arbeitest mit Async Sockets.
Wenn du connect ausführst, kommt dieser Fehler zurück. Dieser Fehler ist im Grunde genommen kein Fehler, der connect Vorgang wird trotzdem ausgeführt. Du bekommst dann eine Nachricht (oder ein Event wird gesetzt) wenn der Vorgang abgeschlossen ist. Wenn duch gleich eine Rückmeldung haben möchstes, musst du mit "normalen" sockets arbeiten. Der Nachteil dabei ist, dass der Thread bzw. die Anwedung von dir solange blockiert ist.
-
dun kannst den ausbau der verbindung mit OnConnect abfragen.
diese methode gibt nur einen fehler zurück, wenn die verbindung wirklich nicht aufgebaut werden konnte (CAsyncSocket).Esco
-
thx, bringt mich endlich weiter.
mfg
Fabez