亚洲免费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久久无吗| 亚洲精品美女久久久久99| 中文字幕一区二区av| 丰满少妇呻吟高潮经历| 亚洲国产18成人中文字幕久久久久无码av| 亚洲女同精品久久女同| 国产一区二区三区亚洲avv| 特级毛片a级毛片100免费播放 | 亚洲成a人片在线观看导航| 亚洲国产精品久久性色av| 好吊妞视频这里有精品| 中文乱码字幕精品高清国产 | 啪啪视频一区二区三区入囗| 亚洲视频观看一区二区| 国产乱子伦精品无码专区 | 欧美性猛交xxx嘿人猛交| 国产99视频精品免视看9| 亚洲人成网站久久久综合| 国产黄色一区二区三区av| 中文无码伦av中文字幕| 亚洲AV日韩AV永久无码电影| 美腿丝袜美腿国产在线| 国产精品女主播福利在线| 中文字幕久无码免费久久| 亚洲AⅤ男人的天堂在线观看| 91精品国产九色综合久久香蕉| 老师露出两个奶球让我吃奶头| 亚洲男人天堂2017|