Socket Connectet nur mit MsgBox?
-
So ich hab ne Socket Klasse erstellt in der ich in eienr Funktion die Verbindung herstelle:
void CSendSocket::Start() { this->Create(); BOOL res = this->Connect(strServer,iPort); if (!res) { while (GetLastError()==WSAEWOULDBLOCK) { Sleep(10); } } theApp.bfinish[iPos]=false; //AfxMessageBox("SCHEISS SOCKET!"); <---- }
Alles funktioniert solange ich de MsgBox rein tue, wenn ich sie rausnehme kriegt das socket keine connection
-
also anscheinend wird das Socket dadurch entblockt, aber kann ichd as nicht irgendwie anderst machen, ich mein sieht einfach scheisse aus wenn man beim eröffnen ner netzwerkverbindung immer ne dumme messagebox sieht
-
also das kann mans icherlich anders loesen in dem man die ursache herausfindet. ich hatte aber mal ein aehniches problem da hats geholfen, einen normalen, selbsterstellten dialog fuer 1ms einzublenden und danach wieder auszublenden. (man hat ihn dann nicht gesehen, aber er war praktisch da).
Esco
-
ich weis wo mitlerweile das problem ist aber nicht wie ich es beheben soll, die funktion um das socket zue rstellen und zu starten wir in einem hread ausgeführt dieser wartet dann bis das socket zurückkehr (bzw. fertig ist) Problem an der ganzen sache ist allerdings, das wenn die msgBox nicht da ist der thread einfach durch "rast" ohne mein socket richtig zu starten, daher gehts mit msgbox und ohne nicht es muss etwas sein dass ne user antwort braucht damit ghets daher bringt sleep nichts, keine ahnung wie ich das lösen soll