共用方式為


CAsyncSocket::Create

在建構通訊端物件之後建立 Windows Sockets 和附加它呼叫 Create 成員函式。

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
    已知通訊埠會搭配通訊端,則為 0。如果您想要 Windows Sockets 選取通訊埠。

  • nSocketType
    SOCK_STREAMSOCK_DGRAM

  • lEvent
    指定 Web 事件將應用程式有興趣的位元遮罩。

    • FD_READ 要接收準備告知讀取。

    • FD_WRITE 要接收準備告知寫入。

    • FD_OOB 要接收 Out-of-Band 資料抵達的通知。

    • FD_ACCEPT 要接收連入連線的通知。

    • FD_CONNECT 要接收完成連接的通知。

    • FD_CLOSE 要接收通訊端關閉的通知。

  • lpszSockAddress
    out 包含已連接的通訊端,會使用按數字的網路位址之字串的指標 (例如「128.56.22.8」。將這個參數的空字串表示 CAsyncSocket 執行個體應該接聽在所有網路介面上用戶端活動。

傳回值

非零值,如果函式成功;否則 0 和特定錯誤代碼可透過呼叫 GetLastError擷取。 下列錯誤套用至此成員函式:

  • WSANOTINITIALISED 的成功的 AfxSocketInit 必須在使用此應用程式開發介面之前發生。

  • WSAENETDOWN Windows Sockets 實作偵測網路子系統失敗。

  • WSAEAFNOSUPPORT 之通訊協定家族不支援。

  • WSAEINPROGRESS 的封鎖 Windows 通訊端作業正在進行中。

  • WSAEMFILE 沒有其他檔案描述項沒有可用的。

  • WSAENOBUFS 不是緩衝區空間可用。 通訊端無法建立。

  • WSAEPROTONOSUPPORT 指定連接埠不支援。

  • WSAEPROTOTYPE 指定連接埠是這個通訊端的錯誤的類型。

  • WSAESOCKTNOSUPPORT 指定通訊端型別在這個通訊協定家族不支援。

備註

Create 呼叫 通訊端 ,而且,如果成功,則呼叫 繫結 繫結通訊端到指定位址。 下列通訊端類型支援:

  • SOCK_STREAM 序列,提供可靠,全雙工,以連接的位元組資料流。 用於網際網路位址家族會使用傳輸控制通訊協定 (TCP) (TCP)。

  • SOCK_DGRAM 支援資料包,是內建的 (通常是小) 最大長度無連線,不可靠的封包。 用於網際網路位址家族使用使用者資料包通訊協定 (UDP) (UDP)。

    注意事項注意事項

    Accept 成員函式會取得對新,空的 CSocket 物件的參考做為它的參數。在您呼叫 Accept之前,您必須建構此物件。請記住,如果這個通訊端物件超出範圍,關閉連接。不要呼叫這個新物件的通訊端 Create

重要

Createnot 是安全執行緒。如果您呼叫在它可以從不同執行緒同時叫用的多執行緒環境中,請務必保護 Mutex 或其他同步鎖定的每個呼叫。

如需資料流的詳細資訊和資料包通訊端,請參閱文件 Windows Sockets:背景Windows Sockets:通訊埠和通訊端位址。Windows Sockets 2 API。

需求

Header: afxsock.h

請參閱

參考

CAsyncSocket 類別

階層架構圖

CAsyncSocket::Accept

CAsyncSocket::Bind

CAsyncSocket::Connect

CAsyncSocket::GetSockName

CAsyncSocket::IOCtl

CAsyncSocket::Listen

CAsyncSocket::Receive

CAsyncSocket::Send

CAsyncSocket::ShutDown