freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第9章160高級網(wǎng)絡(luò)編程api-文庫吧資料

2025-05-27 10:38本頁面
  

【正文】 rLen, int nFlags = 0 )。 rSocketAddress, ?UINTamp。 該函數(shù)用于獲得已經(jīng)與當(dāng)前套接口建立連接的遠(yuǎn)程套接口發(fā)送的數(shù)據(jù) , 該數(shù)據(jù)存入 lpBuf緩沖區(qū)中 。 } CAsyncSocket::OnSend(nErrorCode)。 } } 第 9章 高級網(wǎng)絡(luò)編程 API if (m_nBytesSent == m_nBytesBufferSize) { m_nBytesSent = m_nBytesBufferSize = 0。 AfxMessageBox (szError)。 wsprintf(szError, Server Socket failed to send: %d, GetLastError(?))。 if ((dwBytes = Send((LPCTSTR)m_sendBuffer + m_nBytesSent, m_nBytesBufferSize m_nBytesSent)) == SOCKET_ERROR) { if (GetLastError(?) == WSAEWOULDBLOCK) break。 // int m_nBytesBufferSize。 舉例說明如下: // CMyAsyncSocket是 CAsyncSocket派生類并定義如下變量 // CString m_sendBuffer。 } 第 9章 高級網(wǎng)絡(luò)編程 API 22. OnSend( )函數(shù) OnSend(?)函數(shù)格式如下: virtual void OnSend( int nErrorCode )。 // m_strRecv 是一 個在CMyAsyncSocket中說明的字符串 if ((bye) == 0 ) ShutDown(?)。 //terminate the string CString szTemp(buff)。 } 第 9章 高級網(wǎng)絡(luò)編程 API break。 case SOCKET_ERROR: if (GetLastError(?) != WSAEWOULDBLOCK) { AfxMessageBox (Error occurred)。 switch (nRead) 第 9章 高級網(wǎng)絡(luò)編程 API { case 0: Close(?)。 int nRead。 i++。 該函數(shù)是一個需要重載的回調(diào)函數(shù),當(dāng)一個套接口已經(jīng)準(zhǔn)備好數(shù)據(jù),并可以由函數(shù) Receive(?)接收時,就可以調(diào)用此函數(shù)處理相應(yīng)的消息。 該函數(shù)是一個需要重載的回調(diào)函數(shù) , 如果一些非常急需的數(shù)據(jù)已經(jīng)準(zhǔn)備好 , 就會發(fā)出相應(yīng)的消息 , 這一類消息的處理需要由該函數(shù)完成 。 該函數(shù)是一個需要重載的回調(diào)函數(shù) , 當(dāng)一個套接口成功建立連接或連接失敗時 , 可以調(diào)用此函數(shù)處理相應(yīng)的消息 。 該函數(shù)是一個需要重載的回調(diào)函數(shù) , 當(dāng)一個套接口關(guān)閉時 , 可以調(diào)用此函數(shù)處理相應(yīng)的消息 。參數(shù) nErrorCode指出最新的錯誤代碼 。 17. OnAccept( )函數(shù) OnAccept(?)函數(shù)格式如下: virtual void OnAccept( int nErrorCode )。 該函數(shù)用于連接的監(jiān)聽 , 當(dāng)調(diào)用成功時返回一個非 0的值 。 該函數(shù)用于設(shè)置套接口的工作模式。 要設(shè)置的選項值由參數(shù) lpOptionValue確定 ,其他參數(shù)的含義與 GetSockOpt(?)函數(shù)相同 。 第 9章 高級網(wǎng)絡(luò)編程 API 14. SetSockOpt( )函數(shù) SetSockOpt(?)函數(shù)格式如下: BOOL SetSockOpt( int nOptionName, const void* lpOptionValue, ?? int nOptionLen, int nLevel = SOL_SOCKET )。 獲取的選項值由參數(shù)lpOptionValue確定 , 其長度由 lpOptionLen指針指向的值確定;nOptionName參數(shù)指出要獲取的選項名 , nLevel參數(shù)說明選項級別 , 默認(rèn)的選項級別是 SOL_SOCKET。 13. GetSockOpt( )函數(shù) GetSockOpt(?)函數(shù)格式如下: BOOL GetSockOpt( int nOptionName, void* lpOptionValue, ? ?int* lpOptionLen, int nLevel = SOL_SOCKET )。 第 9章 高級網(wǎng)絡(luò)編程 API 該函數(shù)的作用與 GetPeerName(?)函數(shù)類似 , 對于給定的套接口 , 就可以返回其 IP地址和端口號 。 rSocketPort )。 12. GetSockName( )函數(shù) GetSockName(?)函數(shù)格式如下: BOOL GetSockName(CStringamp。 第 9章 高級網(wǎng)絡(luò)編程 API 對于指定的套接口調(diào)用 GetPeerName(?)函數(shù) , 就可以返回與之對應(yīng)的遠(yuǎn)程套接口的 IP地址和端口號 。 rPeerPort )。 11. GetPeerName( )函數(shù) GetPeerName(?)函數(shù)格式如下: BOOL GetPeerName(CStringamp。 第 9章 高級網(wǎng)絡(luò)編程 API 10. GetLastError( )函數(shù) GetLastError(?)函數(shù)格式如下: static int GetLastError(?)。 該函數(shù)的 hSocket參數(shù)指定一個套接口的句柄 , 其作用是返回與此套接口關(guān)聯(lián)的 CAsyncSocket對象的指針 。 該函數(shù)的作用是將上一次建立關(guān)聯(lián)的套接口句柄斷開 ,并返回此套接口句柄 。 該地址以點分十進(jìn)制的形式給定 , 如“ ”。 在默認(rèn)情況下 , 所有的事件都會生成通知 。 函數(shù)的第 二個參 數(shù) nSocketType 用來 指定是 流式(SOCK_STREAM)還是數(shù)據(jù)報式 (SOCK_DGRAM)套接口 。 在開發(fā)服務(wù)器程序時 , 應(yīng)該明確地分配一個端口號 (即前面介紹的 “ 眾所周知 ” 的端口號 ), 這樣客戶就可以方便地使用該端口號與服務(wù)器連接 。 因為CAsyncSocket的構(gòu)造函數(shù)沒有帶參數(shù) , 所以它只創(chuàng)建一個新的空套接口對象 , 創(chuàng)建底層套接口的真正工作是由Create(?)函數(shù)來完成的 。 第 9章 高級網(wǎng)絡(luò)編程 API 7. Create( )函數(shù) Create(?)函數(shù)格式如下: 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 )。 該函數(shù)用于建立與遠(yuǎn)程套接口的連接 。 第 9章 高級網(wǎng)絡(luò)編程 API 6. Connect( )函數(shù) Connect(?)函數(shù)格式如下: BOOL Connect( LPCTSTR lpszHostAddress, UINT nHostPort )。 要注意的是 , Close(?)函數(shù)是在對象被刪除時由 CAsyncSocket的析構(gòu)函數(shù)自動調(diào)用的 。 第 9章 高級網(wǎng)絡(luò)編程 API 5. Close( )函數(shù) Close(?)函數(shù)格式如下: virtual void Close(?)。 該函數(shù)用于建立一個本地地址與一個套接口的關(guān)聯(lián),即綁定。 第 9章 高級網(wǎng)絡(luò)編程 API 4. Bind( )函數(shù) Bind(?)函數(shù)格式如下: BOOL Bind( UINT nSocketPort, LPCTSTR lpszSocketAddress = NULL )。 該函數(shù)的作用是將一個套接口句柄連接到一個CAsyncSocket對象實例上 , 即建立兩者的關(guān)聯(lián) , 這樣就可以實現(xiàn)與另一臺計算機的連接了 。事件的含義見表 85, 其對應(yīng)的數(shù)值如表 91所示 。 第 9章 高級網(wǎng)絡(luò)編程 API 2. AsyncSelect( )函數(shù) AsyncSelect(?)函數(shù)格式如下: BOOL AsyncSelect(long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE )。 該函數(shù)用于在一個套接口上接受連接請求 。 第 9章 高級網(wǎng)絡(luò)編程 API 1. Accept(?)函數(shù) Accept(?)函數(shù)格式如下: virtual BOOL Accept(CAsyncSocketamp。第 9章 高級網(wǎng)絡(luò)編程 API 第 9章 高級網(wǎng)絡(luò)編程 API MFC提供的 Winsock類 信報 API(MAPI) WinI API 其他網(wǎng)絡(luò)程序設(shè)計 API 習(xí)題 第 9章 高級網(wǎng)絡(luò)編程 API MFC提供的 Winsock類 CAsyncSocket類 CAsyncSocket類封裝了一些基本的 Windows Sockets API函數(shù) , 它提供了與較低層 Windows Sockets對話的接口 ,一般適合于有一定基礎(chǔ)的網(wǎng)絡(luò)編程者使用 , 可方便地進(jìn)行底層的網(wǎng)絡(luò)事件通知及信息回叫控制等操作 。 CAsyncSocket類定義了一組非常有用的成員函數(shù),這些函數(shù)的功能和格式與前幾章介紹的函數(shù)相同或類似,故下面只進(jìn)行一些簡單的說明。 rConnectedSocket, SOCKADDR* lpSockAddr = NULL, int* lpSockAddrLen = NULL )。rConnectedSocket參數(shù)為監(jiān)聽套接口; lpSockAddr參數(shù)為指向地址的指針 , 其初始值為空 , 在連接建立后保存遠(yuǎn)程套接口的 IP地址; lpSockAddrLen參數(shù)為指向客戶套接口地址長度的指針 。 該函數(shù)用于在套接口準(zhǔn)備好之后請求事件通知 。 第 9章 高級網(wǎng)絡(luò)編程 API 表 91 網(wǎng)絡(luò)事件的數(shù)值 網(wǎng)絡(luò)事件類型 對應(yīng)的數(shù)值 F D _ RE A D 0x01 F D _ W RIT E 0x02 F D _ O O B 0x04 F D _ A CCE P T 0x08 F D _ CO N N E CT 0x10 F D _ CL O S E 0x20 第 9章 高級網(wǎng)絡(luò)編程 API 3. Attach( )函數(shù) Attach(?)函數(shù)格式如下: BOOL Attach(SOCKET hSocket, long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE )。 hSocket參數(shù)為套接口句柄 。 或 BOOL Bind ( const SOCKADDR* lpSockAddr, int nSockAddrLen )。它有兩種調(diào)用格式:第一種調(diào)用格式提供套接口、端口號和地址,使用的是字符串形式的地址,一般常用這種調(diào)用方法;第二種調(diào)用格式提供SOCKADDR結(jié)構(gòu)類型的地址參數(shù)。 該函數(shù)用于關(guān)閉套接口 , 釋放與套接口有關(guān)的系統(tǒng)資源 。 Close(?)函數(shù)的 行 為 取 決 于 套 接 口 的 SO_LINGER 和SO_DONTLINGER選項 。 或 BOOL Connect( const SOCKADDR* lpSockAddr, int nSockAddrLen )。 它有兩種調(diào)用格式:第一種調(diào)用格式使用套接口 、 端口號和地址 , 且地址使用參數(shù)為字符串型的地址參數(shù) (如 “ ”)或點分十進(jìn)制的地址 (如 “ ”);第二種調(diào)用格式提供 SOCKADDR結(jié)構(gòu)類型的地址參數(shù) 。 在調(diào)用 CAsyncSocket的構(gòu)造函數(shù)創(chuàng)建了 CAsyncSocket對象后 , 需要調(diào)用 Create(?)函數(shù)來創(chuàng)建底層的套接口 。 第 9章 高級網(wǎng)絡(luò)編程 API Create(?)函數(shù)中 , 第一個參數(shù) nSocketPort用于指定一個分配給套接口的端口號 , 其默認(rèn)值為 0, 其真正的含義是告訴系統(tǒng)可以由系統(tǒng)給該套接口分配一個端口號 。 在開發(fā)客戶程序
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1