error C2039: WSAEventSelect

from Study/Error 2007/06/25 16:01 view 22153

error C2039: 'WSAEventSelect' : is not a member of '`global namespace''

error C2065: 'WSAEventSelect' : undeclared identifier

VS 6.0 의 MFC 은 Winsock 1.1 이다. -_-..

2005의 경우는 Winsock 2.2 이상(?) 이라 WSAEventSelect 가 잘 먹혀 들어간다.

그래서 번거롭지만 이와 같은 작업을 해줘야 한다. 링커에 ws2_32.lib 추가!!

  1. StdAfx.h 파일에서 #include <afxsock.h> 대신에 #include <winsock2.h> 추가.
  2. App클래스에서 기존 소켓을 초기화 해주는 부분을 주석처리.

    //     if (!AfxSocketInit())
    //     {
    //         AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
    //         return FALSE;
    //     }

  3. 라이브러리를 초기화 해주면 자~알(?) 돌아간다.

             WSADATA wsa;
             WSAStartup( MAKEWORD(2, 2), &wsa );

Tag |

Trackback Address :: 이 글에는 트랙백을 보낼 수 없습니다