다음을 통해 공유


CAsyncSocket::Create

호출을 만들기 Windows 소켓을 만들고 연결 하는 소켓 개체를 생성 한 후 멤버 함수입니다.

BOOL Create(
   UINT nSocketPort = 0,
   int nSocketType = SOCK_STREAM,
   long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE,
   LPCTSTR lpszSocketAddress = NULL 
);

매개 변수

  • nSocketPort
    원하는 포트를 선택 합니다 Windows 소켓 경우 소켓, 또는 0을 사용 하는 잘 알려진 포트입니다.

  • nSocketType
    SOCK_STREAM 또는 SOCK_DGRAM.

  • lEvent
    응용 프로그램에서 관심 네트워크 이벤트의 조합을 지정 비트 마스크입니다.

    • 마스킹해야 읽기에 대 한 준비에 대 한 알림을 받을 수 있습니다.

    • FD_WRITE 쓰기에 대 한 준비에 대 한 알림을 받을 수 있습니다.

    • FD_OOB 대역의 데이터의 도착 알림을 받을 수 있습니다.

    • FD_ACCEPT 들어오는 연결에 대 한 알림을 받을 수 있습니다.

    • FD_CONNECT 완료 된 연결에 대 한 알림을 받을 수 있습니다.

    • FD_CLOSE 소켓 클로저 알림을 받을.

  • lpszSockAddress
    연결 된 소켓 "128.56.22.8"와 같이 점으로 구분 된 숫자의 네트워크 주소를 포함 하는 문자열에 대 한 포인터입니다.전달 하는 NULL 이 매개 변수를 나타내는 문자열을 CAsyncSocket 인스턴스가 모든 네트워크 인터페이스에서 클라이언트 동작을 수신 합니다.

반환 값

함수가 성공 하면 0이 아닌. 그렇지 않으면 0이 고 특정 오류 코드를 호출 하 여 검색할 수 있습니다 GetLastError.다음과 같은 오류가이 함수에 적용 됩니다.

  • WSANOTINITIALISED 성공적으로 AfxSocketInit 이 API를 사용 하기 전에 발생 해야 합니다.

  • WSAENETDOWN 는 Windows 소켓 구현이 감지 네트워크 하위 시스템 실패 합니다.

  • WSAEAFNOSUPPORT 지정 된 주소 패밀리가 지원 되지 않습니다.

  • WSAEINPROGRESS Windows 소켓 블로킹 작업이 진행 중입니다.

  • WSAEMFILE 없음 자세한 파일 설명자를 사용할 수 있습니다.

  • WSAENOBUFS버퍼 공간이 없습니다 사용할 수 있습니다.소켓을 만들 수 없습니다.

  • WSAEPROTONOSUPPORT 지정 된 포트는 지원 되지 않습니다.

  • WSAEPROTOTYPE 지정 된 포트를이 소켓에 대 한 형식이 잘못 되었습니다.

  • WSAESOCKTNOSUPPORT 이 주소 패밀리에 지정 된 소켓 형식이 지원 되지 않습니다.

설명

만들기 호출 소켓 성공할 경우이 호출 하 고 바인딩할 지정 된 주소에 소켓을 바인딩할 수 있습니다.다음 소켓 형식이 지원 됩니다.

  • SOCK_STREAM 순차적으로 제공 안정적인, 양방향 연결 기반의 바이트 스트림 합니다.전송 제어 프로토콜 (TCP)에 대 한 인터넷 주소 패밀리를 사용합니다.

  • SOCK_DGRAM 무 연결의 불안정 한 패킷의 최대 길이 (대개 작음) 고정된 되는 데이터 그램을 지원 합니다.사용자 데이터 그램 프로토콜 (UDP)의 인터넷 주소 패밀리를 사용합니다.

    [!참고]

    수락 멤버 함수 사용을 참조 하려면 비어 있는 새 CSocket 매개 변수로 개체입니다.호출 하기 전에이 개체를 생성 해야 허용.점에 유의이 소켓 개체가 범위에서 연결이 닫힙니다 나가는 경우.호출 하지 마십시오 만들기 이 새 소켓 개체에 대 한.

중요중요

만들기 입니다 하지 스레드로부터 안전 합니다.이 다중 스레드 환경에서 위치이 동시에 다른 스레드에서 호출할 수 호출 하는 경우, 각 호출에는 뮤텍스 또는 다른 동기화 잠금이 보호 해야 합니다.

스트림과 데이터 그램 소켓에 대 한 자세한 내용은 문서 Windows 소켓: 배경Windows 소켓: 포트 및 소켓 주소Windows 소켓 2 API.

요구 사항

헤더: afxsock.h

참고 항목

참조

CAsyncSocket 클래스

계층 구조 차트

CAsyncSocket::Accept

CAsyncSocket::Bind

CAsyncSocket::Connect

CAsyncSocket::GetSockName

CAsyncSocket::IOCtl

CAsyncSocket::Listen

CAsyncSocket::Receive

CAsyncSocket::Send

CAsyncSocket::ShutDown