sisela
Erfahrenes Mitglied
Hallo,
folgendes funktioniert einwandfrei:
Muss aber eine Membervariable von CSocket im MainFrame haben. Diese Funktion läuft als extra Thread und ich übergebe ihr nun nur den this Pointer von MainFrame. In der MainFrame Klasse habe ich nun die CSocket Membervariablen. Folgender Code geht aber nicht mehr, wird zwar compiliert aber wirft ständig eine Exception in der wincore.cpp, die wiederum sagt, dass der Socket blockiert ist. (WSAWOULDBLOCK) oder so
Hier mein geänderter nicht funktionierender Code
Warum ist das so, kann ich nicht auf die Membervariablen zugreifen, wegen Thread oder verstehe ich irgendetwas falsch.
Wäre schön, wenn mir jemand helfen könnte
folgendes funktioniert einwandfrei:
Code:
SockServer.Create(21124,1,"127.0.0.1");
// listen on socket
if (!SockServer.Listen()) {
showSocketError(SockServer, pMainFrame);
goto CloseAll;
}
// wait for client
if (!SockServer.Accept(SockReceiver)) {
showSocketError(SockReceiver, pMainFrame);
goto CloseAll;
}
Hier mein geänderter nicht funktionierender Code
Code:
// wird schon im MainFrame created
//SockServer.Create(21124,1,"127.0.0.1");
// listen on socket
if (!pMainFrame->m_SockServer.Listen()) {
showSocketError(pMainFrame->m_SockServer, pMainFrame);
goto CloseAll;
}
// Hier kommt der Fehler immer im Sekundenrhytmus
if (!pMainFrame->m_SockServer.Accept(SockReceiver)) {
showSocketError(SockReceiver, pMainFrame);
goto CloseAll;
}
Warum ist das so, kann ich nicht auf die Membervariablen zugreifen, wegen Thread oder verstehe ich irgendetwas falsch.
Wäre schön, wenn mir jemand helfen könnte