- 791 名前:788 mailto:sage [2008/01/31(木) 22:00:11 ]
- はいTCPです。ざっとですが、こんな感じです。
通信ソケットはクラス化しています。 CServerSock{ SOCKET m_Sock; recvfunc(); }; CServerSock SvSock[2]; AcceptFunc() { int cnt = 0; while( 1 ){ socket = accept(litensock,...); SvSock.m_Sock[cnt++] = socket; // B及びCのソケットを割り当て CreateThread(〜)で各m_Sock用のrecvスレッド(recvfunc)を生成。 } } CServerSock::recvfunc() { char buf[2048]; while( 1 ){ ret = recive( m_Sock, buf, len, 0 ); // このrecive後のbufの内容がB,Cごっちゃになります。 if( ret == 0 || ret == SOCKET_ERROR ) break; ::SendMessage( m_hWnd, m_wMsg, (WPARAM)len, (LPARAM)buf ); 親ウインドウへ通知 } } わかりずらいかもしれませんがよろしくお願いします。
|

|