亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        以MFC為框架實(shí)現(xiàn)C/S通信的Socket編程

        2018-12-22 07:05:48周亞文河南大學(xué)
        數(shù)碼世界 2018年8期

        周亞文 河南大學(xué)

        1 緒論

        1.1 課題背景

        就TCP/IP協(xié)議來講,它是一個(gè)開放的網(wǎng)絡(luò)協(xié)議體系,在利用TCP/IP 協(xié)議的網(wǎng)絡(luò)操作系統(tǒng)中,不同的應(yīng)用程序可以通過網(wǎng)絡(luò)編程接口套接字( Socket)與其下層核心協(xié)議通信。而大部分Windows應(yīng)用程序框架來源于MFC,定義了應(yīng)用程序的結(jié)構(gòu),實(shí)現(xiàn)了應(yīng)用程序的公共部分,封裝了大部分的Windws API 函數(shù),降低了編程難度,大大地提高了應(yīng)用程序的開發(fā)速度和質(zhì)量。本文討論的客戶端服務(wù)器通信的設(shè)計(jì)與實(shí)現(xiàn)方法很好地詮釋了Socket通信的原理。

        2 關(guān)鍵技術(shù)

        2.1 MFC

        MFC是一個(gè)編程框架。

        MFC應(yīng)用程序框架,簡稱MFC框架,是由MFC(Microsoft Foundation Class Library)中的各種類結(jié)合起來構(gòu)成的。MFC框架從總體上定義了應(yīng)用程序的輪廓,并提供了用戶接口的標(biāo)準(zhǔn)實(shí)現(xiàn)方法,程序員只須通過預(yù)定義的接口把具體應(yīng)用程序特有的東西填入這個(gè)輪廓,就能建立Windows下的應(yīng)用程序。MFC 中所有的類都來源于一個(gè)基類:CObject。

        2.2 WINDOWS SOCKETS網(wǎng)絡(luò)編程接口

        選定WINDOWS平臺(tái)開發(fā)網(wǎng)絡(luò)通信程序,可以選擇WINDOWS的SOCKETS編 程 接 口,Windows Sockets是 一套開放的、支持多種協(xié)議的Windows下的網(wǎng)絡(luò)編程接口?,F(xiàn)在的Winsock已經(jīng)基本上實(shí)現(xiàn)了與協(xié)議無關(guān),可以使用Winsock來調(diào)用多種協(xié)議的功能,但較常使用的是TCP/IP協(xié)議。

        2.3 Client/Server結(jié)構(gòu)(客戶機(jī)/服務(wù)器模式)

        C/S結(jié)構(gòu)軟件分為客戶機(jī)和服務(wù)器兩層,客戶機(jī)不是毫無運(yùn)算能力的輸入、輸出設(shè)備,而是具有了一定的數(shù)據(jù)處理和數(shù)據(jù)存儲(chǔ)能力,通過把應(yīng)用軟件的計(jì)算和數(shù)據(jù)合理地分配在客戶機(jī)和服務(wù)器兩端,可以有效地降低網(wǎng)絡(luò)通信量和服務(wù)器運(yùn)算量。

        C/S結(jié)構(gòu)的優(yōu)點(diǎn)是能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器。對應(yīng)的優(yōu)點(diǎn)就是客戶端響應(yīng)速度快。

        3 系統(tǒng)設(shè)計(jì)與功能實(shí)現(xiàn)

        3.1 系統(tǒng)設(shè)計(jì)

        3.1.1 服務(wù)器端應(yīng)用程序的創(chuàng)建:

        (1)使用MFC AppWizard創(chuàng)建服務(wù)器端應(yīng)用程序框架。

        創(chuàng)建一個(gè)工程名為Server,選擇 Dialog based 的應(yīng)用程序類型,選擇中文(中國),選擇Windows Sockets支持,其他接受系統(tǒng)默認(rèn)值。所創(chuàng)建的程序?qū)⒆詣?dòng)創(chuàng)建兩個(gè)類,應(yīng)用程序類ServerApp,對應(yīng)的文件是Server.cpp 和 Server.h;對話框類 ServerDlg,對應(yīng)的文件是ServerDlg.cpp 和 ServerDlg.h。

        (2)為對話框界面添加控件對象

        在創(chuàng)建了應(yīng)用程序框架之后,可以布置程序的主對話框。在Visual Studio 的“SolutionExplorer(解決方案資源管理器)”(可通過 View-SolutionExplorer 調(diào)出)中選擇“ResourceFiles”并通過單擊展開,雙擊后綴為.rc 的文件,在出現(xiàn)的界面中展開 Dialog,雙擊其中的 IDD_DIALOG,便會(huì)出現(xiàn)圖形界面的可視化設(shè)計(jì)窗口以及圖形界面控件面板,利用控件面板可以方便地在程序的主對話框界面中添加相應(yīng)的可視控件對象。添加相應(yīng)的控件對象。

        (3)為對話框中的控件對象定義相應(yīng)的成員變量

        在窗口菜單中選擇“Project(項(xiàng)目)”/“Class Wizard(類向?qū)В泵睿M(jìn)入“MFC ClassWizard”(類向?qū)Вυ捒?,將Class name通過下拉列表勾選為ServerDlg,然后選擇“Member Variables”(成員變量)選項(xiàng)卡,用類向?qū)閷υ捒蛑械目丶ο蠖x相應(yīng)的成員變量。在左邊的列表框中選擇一個(gè)控件,然后單擊“Add Variable”(添加變量)按鈕,會(huì)彈出“Add Member Variable”(添加成員變量)對話框,根據(jù)需要進(jìn)行定義。

        3.2 功能實(shí)現(xiàn)

        打開服務(wù)器, 輸入端口號(hào)(1000),點(diǎn)擊“OPEN”按鈕開啟服務(wù)器。這時(shí)服務(wù)器對話框中顯示“服務(wù)已經(jīng)開啟!”;接著打開客戶端,輸入IP(192.168.43.204)和相應(yīng)的端口號(hào)(1000),該端口號(hào)必須和服務(wù)器端口號(hào)一致,否則無法連接服務(wù)器,在客戶端對話框中輸入所要發(fā)送的消息,最后點(diǎn)擊“send”按鈕,在服務(wù)器對話框中就可以看到客戶端發(fā)送的文本消息。

        成人av在线久色播放| 春色成人在线一区av| 国产青青草视频在线播放| 少妇下面好紧好多水真爽| 成人精品一区二区三区电影| 麻豆高清免费国产一区 | 久久久久久久久高潮无码| 国产日产亚洲系列首页| 人妻在卧室被老板疯狂进入| 国产福利姬喷水福利在线观看| 国产成人精品免费视频大全| 国产精品自拍视频在线| 色综合久久中文娱乐网| 亚洲狠狠婷婷综合久久| 久久精品综合国产二区| 国产在线观看午夜视频| 国产精品亚洲а∨无码播放不卡| 国产真人无遮挡作爱免费视频| 国产一区二区三区高清视频| 国产精品亚洲av高清二区| 久久久久久曰本av免费免费| 亚洲丁香婷婷综合久久小说| 午夜黄色一区二区不卡| 久久久国产精品| 国产免费丝袜调教视频| 久久天天躁狠狠躁夜夜中文字幕| 亚洲肥婆一区二区三区| 国产国产人免费人成免费视频| 精品国产一区二区三区久久久狼| 国产三级自拍视频在线| 伊人久久大香线蕉av五月| ā片在线观看免费观看| 亚洲国产精品中文字幕日韩| 美女被内射中出在线观看| 亚洲精品成人网站在线播放| 国产呦精品系列在线播放| 中文字幕亚洲乱码熟女在线| 综合图区亚洲另类偷窥| 97久久天天综合色天天综合色hd| 素人激情福利视频| 国内自拍色第一页第二页|