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

正文內(nèi)容

第9章160高級(jí)網(wǎng)絡(luò)編程api(參考版)

2025-05-22 10:38本頁面
  

【正文】 CMC_string subject。 CMC_message結(jié)構(gòu)的定義如下: typedef struct { CMC_message_reference FAR *message_reference。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API cmc_send(?)函數(shù)可以提供更強(qiáng)的發(fā)送信報(bào)控制功能 , 它的調(diào)用格式如下: CMC_return_code cmc_send( CMC_session_id session, CMC_message FAR *message, CMC_flags send_flags, CMC_ui_id ui_id, CMC_extension FAR *send_extensions )。39。39。39。39。39。39。39。39。39。39。39。39。 該調(diào)用中的標(biāo)志 CMC_LOGON_UI_ALLOWED和CMC_ERROR_UI_ALLOWED表示允許信報(bào)服務(wù)程序利用本身的 UI進(jìn)行登錄和錯(cuò)誤處理等工作。要使用信報(bào)服務(wù)提供的對(duì)話框,必須把 send_doc_flags參數(shù)的值設(shè)置為CMC_SEND_UI_REQUESTED,這樣才允許用戶利用普通目的新信報(bào)對(duì)話框來選擇地址,并進(jìn)入信報(bào)的文本和附屬文件中,此時(shí)為消息確定的任何參數(shù)將出現(xiàn)在對(duì)話框中成為默認(rèn)值,這些參數(shù)也可以為空。 接收者的地址可以是確定的地址,例如,也可以是地址手冊(cè)、其他程序中接收者的名字。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 該函數(shù)的大多數(shù)參數(shù)是字符串型的 。 CMC API提供的 cmc_send_documents(?)函數(shù)功能強(qiáng)大 ,?幾乎包括了發(fā)送信報(bào)時(shí)所需的所有功能,如它可以創(chuàng)建一個(gè)對(duì)話,而不必使用 cmc_logon(?)函數(shù)。cmcSession, //返回對(duì)話 NULL //無擴(kuò)展 )。cmcSession, //返回對(duì)話 NULL //無擴(kuò)展 )。)。Logon UI is available39。 if(cmcStatus!=CMC_SUCCESS) { //進(jìn)行錯(cuò)誤處理 …… } 第 9章 高級(jí)網(wǎng)絡(luò)編程 API else if(cmcUiAvail) printf(39。 //查詢?cè)搶?shí)現(xiàn)中 UI(user interface)的可用性 第 9章 高級(jí)網(wǎng)絡(luò)編程 API cmcStatus=cmc_query_configuration( 0, //沒有會(huì)話句柄 CMC_CONFIG_UI_AVAIL, //該參數(shù)用來查詢 UI的可用性 (void*)amp。 CMC_Boolean cmcUiAvail。39。39。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 開始對(duì)話的過程就是初始化 CMC的過程 , 下面我們舉一個(gè)實(shí)例來說明對(duì)話過程的開始和結(jié)束 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 當(dāng)要結(jié)束一個(gè)對(duì)話時(shí) , 應(yīng)該調(diào)用 cmc_logoff(?)函數(shù)來關(guān)閉一個(gè)對(duì)話 。 用戶可以通過使用 cmc_query_configuration(?)函數(shù)來獲取CMC當(dāng)前的安裝信息 , 包括缺省的用戶 、 信報(bào)服務(wù)和用戶入網(wǎng)條件及其他的一些信息 。 } CMC_extension。 CMC_buffer item_reference。 CMC_extension結(jié)構(gòu)的定義如下: typedef struct { CMC_uint32 item_code。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 該函數(shù)的參數(shù)很簡(jiǎn)單 , 從各參數(shù)的名稱就可以看出其含義 。 調(diào)用 cmc_logon(?)函數(shù)可以創(chuàng)建一個(gè) CMC對(duì)話 , cmc_logon(?)函數(shù)將利用信報(bào)服務(wù)程序建立與郵件服務(wù)器的連接 , 檢查用戶的登錄號(hào) (即標(biāo)識(shí)用戶 ), 設(shè)置郵件服務(wù)器的屬性參數(shù) , 并返回一個(gè)對(duì)話句柄 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 2. CMC定義的標(biāo)志 在 CMC中定義了各種類型的標(biāo)志 , 這些標(biāo)志廣泛使用在后面介紹的 CMC函數(shù)中 。 typedef CMC_uint32 CMC_ui_id。 typedef CMC_string CMC_object_identifier。 typedef CMC_uint32 CMC_return_code。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API typedef CMC_uint16 CMC_boolean。 typedef void far * CMC_buffer。 typedef unsigned short int CMC_uint16。 typedef short CMC_sint16。對(duì)于每一個(gè)CDocument類,應(yīng)該增加如下所示的消息映射項(xiàng): 第 9章 高級(jí)網(wǎng)絡(luò)編程 API ON_COMMAND(ID_FILE_SEND_MAIL,OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SEND_MAIL,OnUpdateFileSendMail) 增加后的程序?yàn)? BEGIN_MESSAGE_MAP(CMapi1Doc, CDocument) //{{AFX_MSG_MAP(CMapi1Doc) // NOTE the ClassWizard will add and remove mapping macros here. 第 9章 高級(jí)網(wǎng)絡(luò)編程 API // DO NOT EDIT what you see in these blocks of generated code! //}}AFX_MSG_MAP ON_COMMAND(ID_FILE_SEND_MAIL, OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SEND_MAIL, OnUpdateFileSendMail) END_MESSAGE_MAP(?) 第 9章 高級(jí)網(wǎng)絡(luò)編程 API MAPI的高級(jí)應(yīng)用 目前存在以下 4種 MAPI的客戶接口。 該菜單項(xiàng)的 ID可以從屬性中選擇ID_FILE_SEND_MAIL(當(dāng)然用戶也可以輸入其他 ID, 但該 ID是一個(gè)標(biāo)準(zhǔn)的 ID命令 )。然后執(zhí)行程序 , 在 “ 文件 ” 菜單中加入 “ Send… ”菜單命令 。但一定要注意,如果沒有設(shè)置默認(rèn)的郵件處理程序,則在運(yùn)行“傳送 …” 命令時(shí)將彈出有關(guān)郵件設(shè)置的提示信息,要求設(shè)置默認(rèn)郵件處理程序。 若在創(chuàng)建工程時(shí)沒有選擇 MAPI選項(xiàng) , 則可以通過手工的方式增加 MAPI功能 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 信 報(bào) 感 知 應(yīng) 用 程 序可 傳 遞 信 報(bào) 的 應(yīng) 用 程 序基 于 信 報(bào) 的 應(yīng) 用 程 序客 戶 應(yīng) 用 程 序系 統(tǒng) 服 務(wù) 程 序M A P I圖 91 MAPI組件結(jié)構(gòu)圖 第 9章 高級(jí)網(wǎng)絡(luò)編程 API MFC對(duì) MAPI的支持 1. 使用 VC++提供的 AppWizard 利用 AppWizard創(chuàng)建一個(gè) MAPI應(yīng)用的過程非常簡(jiǎn)單 , 但要注意在 MFC AppWizardStep 4 of 6對(duì)話框中要確認(rèn)對(duì) MAPI項(xiàng)的選擇 , 如圖 92所示 。 該函數(shù)是一個(gè)需要重載的虛函數(shù) , 當(dāng)套接口處于阻塞狀態(tài)時(shí) , 調(diào)用 OnMessagePending(?)函數(shù)可以處理應(yīng)用中的其他消息 。 如果套接口處于阻塞狀態(tài) , 那么調(diào)用CancelBlockingCall(?)函數(shù)后 , 所有套接口的阻塞請(qǐng)求被刪除 。 IsBlocking(?)函數(shù)調(diào)用后返回一個(gè)布爾值 , 作用為判斷在當(dāng)前時(shí)刻套接口是否處于阻塞狀態(tài) , 即是否在等待某種事件的發(fā)送 。 如果沒有與此套接口關(guān)聯(lián)的對(duì)象 ,則返回 NULL。 3. FromHandle( )函數(shù) FromHandle(?)函數(shù)格式如下: static CSocket* PASCAL FromHandle( SOCKET hSocket )。 當(dāng)一個(gè)服務(wù)器有多個(gè) IP地址時(shí) , 可以為套接口指定一個(gè)特定的地址 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 該函數(shù)的默認(rèn)套接口類型是 SOCK_STREAM, 即流式套接口 , 當(dāng)然在程序中我們還可以使用數(shù)據(jù)報(bào)套接口SOCK_DGRAM。 該函數(shù)的三個(gè)參數(shù)都有默認(rèn)值 , 對(duì)客戶機(jī)套接口來說 , 使用默認(rèn)參數(shù)就可以了 。 } 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 2. Create( )函數(shù) Create(?)函數(shù)格式如下: BOOL Create( UINT nSocketPort = 0, int nSocketType = SOCK_STREAM, ? LPCTSTR lpszSocketAddress = NULL )。 // Detach the newly accepted socket and save // the SOCKET handle. 第 9章 高級(jí)網(wǎng)絡(luò)編程 API hConnected = (?)。 } // This listening socket has been constructed // in the primary thread. 第 9章 高級(jí)網(wǎng)絡(luò)編程 API void CListeningSocket::OnAccept(int nErrorCode) { // This CSocket object is used just temporarily // to accept the ining connection. CSocket sConnected。 BOOL CSockThread::InitInstance(?) { // Attach the socket object to the socket handle // in the context of this thread. (hConnected)。 }。 舉例說明如下 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 1. Attach( )函數(shù) Attach(?)函數(shù)格式如下: BOOL Attach( SOCKET hSocket )。 同時(shí) , 它支持模塊化的后臺(tái)信息處理 , 解決了CAsyncSocket中較難克服的多線程處理問題 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 表 92 控制模式的值 關(guān)閉方式 值 含 義 R e c e i v e s 0 關(guān)閉接收功能 S e n d s 1 關(guān)閉發(fā)送功能 B o t h 2 同時(shí)關(guān)閉接收功能和發(fā)送功能 第 9章 高級(jí)網(wǎng)絡(luò)編程 API CSocket類 CSocket類派生于 CAsyncSocket類 , 它繼承了父類中一些常用 、 易懂的 Windows Sockets API 函數(shù) , 并對(duì)CAsyncSocket底層中較難控制的一些 API函數(shù)或成員函數(shù)進(jìn)行了處理 , 為 Winsock API提供了一個(gè)更高級(jí)別的編程接口 。 調(diào)用該函數(shù)并不影響套接口的打開狀態(tài) , 它不關(guān)閉套接口 , 只可以控制是否能夠繼續(xù)發(fā)送或接收數(shù)據(jù) , 即是否允許繼續(xù)調(diào)用 Send(?)和 Receive(?)函數(shù) 。 該函數(shù)用于向無連接的遠(yuǎn)程套接口發(fā)送數(shù)據(jù) 。 第 9章 高級(jí)網(wǎng)絡(luò)編程 API 26. SendTo( )函數(shù) SendTo(?)函數(shù)格式如下: int SendTo( const void* lpBuf, int nBufLen, UINT nHostPort, LPCTSTR lpszHostAddress = NULL, int nFlags = 0 )。 25. Send( )函數(shù) Send(?)函數(shù)格式如下: virtual int Send( const void* lpBuf, int nBufLen, int nFlags = 0 )。 或 int ReceiveFrom( void* lpBuf, int nBufLen, SOCKADDR* lpSockAddr, ?int* lpSockAdd
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1