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

正文內(nèi)容

基于socket的網(wǎng)絡(luò)編程技術(shù)及其實(shí)現(xiàn)學(xué)士學(xué)位論文-預(yù)覽頁(yè)

 

【正文】 有Socket接口的計(jì)算機(jī)通信。應(yīng)用程序使用Windows Sockets的API,而Windows Sockets又利用下層的網(wǎng)絡(luò)通信協(xié)議與操作系統(tǒng)以產(chǎn)生實(shí)際的通信。也就是說(shuō),當(dāng)應(yīng)用程序調(diào)用send或WSASend函數(shù)來(lái)發(fā)送數(shù)據(jù)時(shí),AFDSYS將把數(shù)據(jù)復(fù)制進(jìn)他自己的發(fā)送緩沖區(qū),然后send后WSASend函數(shù)立即返回AFDSYS在后臺(tái)負(fù)責(zé)把數(shù)據(jù)發(fā)送出去,遠(yuǎn)程客戶端接收數(shù)據(jù)的情況也類(lèi)似,由接收方的AFDSYS在后臺(tái)負(fù)責(zé)把數(shù)據(jù)復(fù)制到自己的接收緩沖區(qū),然后當(dāng)應(yīng)用程序調(diào)用recv后WSARecv函數(shù)來(lái)接收數(shù)據(jù)時(shí),把數(shù)據(jù)由AFDSYS管理的接收緩沖區(qū)復(fù)制到應(yīng)用程序提供的緩沖區(qū)中。應(yīng)用程序套接字套接字仿真器傳輸驅(qū)動(dòng)程序接口傳輸協(xié)議 套接字通信機(jī)制 Winsock編程模型建立一個(gè)SocketWinsock函數(shù)含有三個(gè)參數(shù),“協(xié)議簇”參數(shù)指明像TCP/IP協(xié)議組這樣的一組相關(guān)協(xié)議,“Socket類(lèi)型”參數(shù)指明參數(shù)指明程序是進(jìn)行數(shù)據(jù)報(bào)傳輸還是字節(jié)流傳輸,“協(xié)議”參數(shù)定義了協(xié)議簇內(nèi)程序欲使用的具體協(xié)議(如TCP或UDP)。當(dāng)程序調(diào)用Winsock函數(shù)建立一個(gè)新Socket時(shí),Winsock將為一個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)分配內(nèi)存,此結(jié)構(gòu)中保存有關(guān)此Socket的信息。建立好連接后,客戶程序依靠TCP協(xié)議給它傳送數(shù)據(jù)。在前一步已建立的Socket基礎(chǔ)上,面向連接的客戶程序使用connect函數(shù)來(lái)配置Socket。使用無(wú)連接協(xié)議的客戶程序必須發(fā)送一個(gè)帶有服務(wù)請(qǐng)求的數(shù)據(jù)報(bào)并等待應(yīng)答,遠(yuǎn)地服務(wù)器的應(yīng)答以數(shù)據(jù)報(bào)的形式到達(dá)。當(dāng)一個(gè)應(yīng)用程序調(diào)用WSAStartup函數(shù)時(shí),操作系統(tǒng)根據(jù)請(qǐng)求的Socket版本來(lái)搜索相應(yīng)的Socket庫(kù),然后綁定找到的Socket庫(kù)到該應(yīng)用程序中。Closesocket函數(shù)用來(lái)關(guān)閉一個(gè)描述符為s套接字。Closesocket函數(shù)如果執(zhí)行成功就返回0,否則返回SOCKET_ERROR。服務(wù)程序調(diào)用accept函數(shù)從處于監(jiān)聽(tīng)狀態(tài)的流套接字s的客戶連接請(qǐng)求隊(duì)列中取出排在最前的一個(gè)客戶請(qǐng)求,并且創(chuàng)建一個(gè)新的套接字來(lái)與客戶套接字創(chuàng)建連接通道,如果連接成功,就返回新創(chuàng)建的套接字的描述符,以后與客戶套接字交換數(shù)據(jù)的是新創(chuàng)建的套接字;如果失敗就返回INVALID_SOCKET。各種GDI函數(shù)會(huì)自動(dòng)參考被稱(chēng)為設(shè)備環(huán)境的數(shù)據(jù)結(jié)構(gòu)。因此把這種BMP圖像文件格式稱(chēng)為設(shè)備相關(guān)位圖(DDB)格式。其結(jié)構(gòu)定義如下:typedefstruct tagBITMAPFILEHEADER{WORD bfrype;∥位圖文件的類(lèi)型,必須為BMDWORD bfSize;∥位圖文件的大小,以字節(jié)為單位WORD bIRescrvcdl;∥圖文件保留字,必須為0WORD bIReserved2;∥位圖文件保留字,必須為0DWORD bfOffBits;∥位圖數(shù)據(jù)的起始位置,以相對(duì)于位圖文件頭的偏移量表示,單位是字節(jié)}BITMAPFILEHEADER;(2)BMP位圖信息頭BMP位圖信息頭數(shù)據(jù)用于說(shuō)明位圖的尺寸等信息,其結(jié)構(gòu)定義如下:typedefstruct tagBITMAPINFOHEADER{DWORD biSize;∥結(jié)構(gòu)所占用字節(jié)數(shù)LONG biWidth;∥位圖的寬度,以像素為單位LONG biHeight; ∥位圖的高度,以像素為單位WORD biplanes; ∥目標(biāo)設(shè)備的級(jí)別,必須為lWORD biBitCount;∥每個(gè)像素所需的位數(shù),必須是l(雙色),4(16色),8(256色)或24(真彩色)之一DWORD biCompression; ∥位圖壓縮類(lèi)型,必須是0(不壓縮),1(BI_RLE8壓縮類(lèi)型)或2(BI RLE4壓縮類(lèi)型)之一DWORD biSizeImage;∥位圖的大小,以字節(jié)為單位LONG biXPelsPerMeter;∥位圖水平分辨率。位圖的一個(gè)像素值所占的字節(jié)數(shù):●當(dāng)biBitCount=1時(shí),8個(gè)像素占1個(gè)字節(jié);●當(dāng)biBitCount=4時(shí),2個(gè)像素占1個(gè)字節(jié);●當(dāng)biBitCount=8時(shí),1個(gè)像素占1個(gè)字節(jié);●當(dāng)biBitCount=24時(shí),1個(gè)像素占3個(gè)字節(jié)。圖像數(shù)據(jù)壓縮技術(shù)總的來(lái)說(shuō)就是利用圖像數(shù)據(jù)固有的冗余性和相干性,將一個(gè)大的數(shù)據(jù)文件轉(zhuǎn)換成較小的同性質(zhì)的文件。實(shí)際的圖像壓縮其實(shí)是綜合使用各種有損和無(wú)損壓縮技術(shù)來(lái)實(shí)現(xiàn)的。壓縮的理論基礎(chǔ)是信息論。在數(shù)字圖像壓縮中,有3種基本的數(shù)據(jù)冗余:像素相關(guān)冗余,編碼冗余,心理視覺(jué)冗余。如: 有一個(gè)原始數(shù)據(jù)序列,ABACCDAA則編碼為A(0),B(10),C(110), D(111),壓縮后為010011011011100。常見(jiàn)的符號(hào)需要很少的位來(lái)表示,而不常見(jiàn)的符號(hào)需要很多為來(lái)表示。對(duì)于擁有大面積,相同顏色區(qū)域的圖像,用RLE壓縮方法非常有效。其中第一個(gè)字節(jié)規(guī)定了用第二個(gè)字節(jié)指定的顏色重復(fù)次數(shù)。(3)BI_RLE壓縮方法:該方法也用于Windows位圖文件中,它與 BI_RLE8編碼類(lèi)似,唯一不同是:BI_RLE4的一個(gè)字節(jié)包含了兩個(gè)像素的顏色,因此,它只能壓縮的顏色數(shù)不超過(guò)16的圖像。3 遠(yuǎn)程控制系統(tǒng)總體設(shè)計(jì) 系統(tǒng)需求分析 用戶需求作為管理人員,需要規(guī)范規(guī)范員工對(duì)計(jì)算機(jī)的使用、及時(shí)發(fā)現(xiàn)并解決工作中存在的問(wèn)題,作為維護(hù)人員需要實(shí)時(shí)地監(jiān)控聯(lián)網(wǎng)計(jì)算機(jī)或網(wǎng)外計(jì)算機(jī)的運(yùn)行情況、根據(jù)需要隨時(shí)改變聯(lián)網(wǎng)計(jì)算機(jī)系統(tǒng)設(shè)置,對(duì)出現(xiàn)故障的計(jì)算機(jī)能夠通過(guò)網(wǎng)絡(luò)及時(shí)修復(fù)。這意味著您可以在遠(yuǎn)程計(jì)算機(jī)工作,就像你坐在它前面一樣。UDP雖然效率更高,但是有掉包的情況出現(xiàn),這是本方案所不允許的。網(wǎng)絡(luò)流量的問(wèn)題是造成所有通信程序的不穩(wěn)定性的罪魁禍?zhǔn)?。遠(yuǎn)程主機(jī)運(yùn)行被控端程序,監(jiān)聽(tīng)固定端口等待連接;本地計(jì)算機(jī)運(yùn)行主控端程序,連接指定端口。接收發(fā)送發(fā)送接收連接遠(yuǎn)程主機(jī)顯示桌面信息發(fā)送控制信息等待遠(yuǎn)程連接獲取桌面信息執(zhí)行控制命令SocketTCP/IP物理網(wǎng)絡(luò)支持TCP/IP協(xié)議的網(wǎng)絡(luò)建立連接 系統(tǒng)基本框架 。根據(jù)系統(tǒng)的實(shí)際需求,設(shè)計(jì)系統(tǒng)客戶端主界面包括遠(yuǎn)程控制選項(xiàng)和幫助選項(xiàng)。 網(wǎng)格空間數(shù)目選項(xiàng)色彩模式選項(xiàng)界面,添加兩個(gè)單項(xiàng)選擇按鈕,分別為16色屏幕模式和256色屏幕模式,一個(gè)確定按鈕,一個(gè)取消按鈕。 服務(wù)器選項(xiàng)開(kāi)啟服務(wù)器選項(xiàng)界面,添加端口號(hào),IP地址的靜態(tài)文本控件和文本編輯控件。 DWORD dwLen。 char szString[81]。 return 1。 if (nRet == SOCKET_ERROR) { if (WSAGetLastError() != WSAENOBUFS) return 1。Protocol)。 nZero = 0。 = htons(port)。\039。 return 1。Server remote control所需要的模塊如下。主框架模塊:負(fù)責(zé)Server端窗口的消息處理。 int nZero = 0。 char szClientIP[81]。 dwLen = 0。 } pBuf = malloc(dwLen)。 Listen = WSASocket(AF_INET,SOCK_STREAM,IPPROTO_IP,NULL,0,SOCK_STREAM)。 } = htonl(INADDR_ANY)。local,sizeof(local)) == SOCKET_ERROR) { sprintf(szString,bind() failed: %d\n, WSAGetLastError())。這是服務(wù)器套接字的建立,綁定,監(jiān)聽(tīng),最后到接收連接的過(guò)程。這樣客戶端可以隨意的操縱服務(wù)器端的應(yīng)用程序,所以也就需要服務(wù)器端程序向操作系統(tǒng)發(fā)送來(lái)自客服端的任何鼠標(biāo)鍵盤(pán)的模擬消息。正值表示滾輪向前旋轉(zhuǎn)。 流數(shù)據(jù)的實(shí)現(xiàn)首先啟動(dòng)Sever Remote Control的程序,開(kāi)啟監(jiān)聽(tīng)端口,將CLIENT REMOTE CONTROL 連接到服務(wù)器的端口,之后SERVER開(kāi)啟一個(gè)與客服端通信的線程這個(gè)線程專(zhuān)門(mén)負(fù)責(zé)接收和處理客服端發(fā)送過(guò)來(lái)的消息,并在本機(jī)上執(zhí)行相關(guān)命令。服務(wù)器端再根據(jù)這些消息做出相應(yīng)的操作。很好理解:要使總長(zhǎng)最短,出現(xiàn)越多次的符號(hào)的編碼就要越短。這一術(shù)語(yǔ)是指使用一張?zhí)厥獾木幋a表將源字符(例如某文件中的一個(gè)符號(hào))進(jìn)行編碼。用普通的表示方法時(shí),每個(gè)英文字母均占用一個(gè)字節(jié)(byte),即8個(gè)位。是一個(gè)比較復(fù)雜的技術(shù):Windows程序不僅在輸入上與DOS程序不同,而且在程序輸出上也與DOS有著很大不同,主要表現(xiàn)為:DOS程序獨(dú)占整個(gè)顯示屏幕,其他程序在后臺(tái)等待。Windows提供了豐富的圖形函數(shù)用于圖形輸出,這對(duì)輸出圖形是相當(dāng)方便的,但是由于字符也被作為圖形來(lái)處理,輸出時(shí)的定位要比DOS復(fù)雜的多。而在Windows下要輸出這兩行文字所做的工作要復(fù)雜的多。在DOS下編寫(xiě)過(guò)Foxpro程序的讀者常常會(huì)有這樣的體會(huì),在編寫(xiě)打印報(bào)表程序時(shí),要針對(duì)不同的打印機(jī)在程序中插入不同的打印控制碼,用以控制換頁(yè)、字體設(shè)置等選項(xiàng)。對(duì)于一臺(tái)具有打印矩形功能的PostScript打印機(jī)來(lái)說(shuō),GDI可能只需要將矩形數(shù)據(jù)傳給驅(qū)動(dòng)程序就可以了,然后由驅(qū)動(dòng)程序產(chǎn)生PostScript命令繪制出相應(yīng)的矩形;而對(duì)于一臺(tái)沒(méi)有矩形輸出功能的點(diǎn)陣打印機(jī)來(lái)說(shuō),GDI可能需要將矩形轉(zhuǎn)化為四條線,然后向驅(qū)動(dòng)程序發(fā)出畫(huà)線的指令,在打印機(jī)上輸出矩形。GDI提供了大量用于圖形輸出的函數(shù),這些函數(shù)接收應(yīng)用程序發(fā)出來(lái)的繪圖請(qǐng)求、處理繪圖數(shù)據(jù)并根據(jù)當(dāng)前使用設(shè)備調(diào)用相應(yīng)的設(shè)備驅(qū)動(dòng)程序產(chǎn)生繪圖輸出。一個(gè)偽設(shè)備提供了一種在RAM里或磁盤(pán)里存儲(chǔ)圖象的方法。當(dāng)程序在一個(gè)窗口中繪圖時(shí),首先建立缺省的繪圖坐標(biāo),原點(diǎn)(0,0)位于窗口用戶區(qū)的左上角。這樣,你在窗口內(nèi)繪圖時(shí),就不必?fù)?dān)心會(huì)偶然覆蓋其他程序的窗口,從而保證了Windows下同時(shí)運(yùn)行多個(gè)任務(wù)時(shí)各個(gè)窗口的獨(dú)立性??蛻魴C(jī)的配置為Intel Pentium ,512MB內(nèi)存,Windows XP操作系統(tǒng),稱(chēng)為主機(jī)B。 客戶端運(yùn)行并選擇連接 準(zhǔn)備連接服務(wù)器連接服務(wù)器后,客戶端出現(xiàn)服務(wù)器端的桌面信息。 顯示界面網(wǎng)格 顯示網(wǎng)格后。 右擊桌面文件夾客戶端鍵盤(pán)鍵入(O)并打開(kāi)文件夾。 打開(kāi)桌面播放器點(diǎn)擊播放,桌面顯示服務(wù)器端視頻正常播放。結(jié) 論本文運(yùn)用Socket網(wǎng)絡(luò)編程的知識(shí),以VC++,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)遠(yuǎn)程桌面控制系統(tǒng)。本系統(tǒng)可通過(guò)網(wǎng)際、網(wǎng)內(nèi),對(duì)服務(wù)器主機(jī)桌面實(shí)現(xiàn)遠(yuǎn)程控制,控制端可以應(yīng)用鼠標(biāo)和鍵盤(pán)如同操作本機(jī)一樣控制被控端,這樣可以實(shí)現(xiàn)控制端對(duì)被控端的操作。通過(guò)老師的耐心幫助和細(xì)心指導(dǎo),不但使我對(duì)通信工程學(xué)科所學(xué)的知識(shí)有了更加系統(tǒng)、實(shí)際和全面的認(rèn)識(shí),更使我對(duì)人生價(jià)值觀有了深層次的認(rèn)知,堅(jiān)定了我的理想信念。還要感謝幫助和鼓勵(lì)我的同學(xué)們,是你們的幫助和鼓勵(lì)使我在遇到困難時(shí)及時(shí)恢復(fù)信心!由于本人知識(shí)水平有限,文中漏處望各位老師指點(diǎn)周正,不勝感激!參考文獻(xiàn)[1] 明日科技.Visual C++程序開(kāi)發(fā)范例寶典.人民郵電出版,2007 [2] 王勇,代桂平.計(jì)算機(jī)網(wǎng)絡(luò)課程設(shè)計(jì).清華大學(xué)出版社,2009[3] 丁展,劉海英.VC++網(wǎng)絡(luò)通信編程實(shí)用案例精選.人民郵電出版社,2004[4](美)Jbeveridge Wiener.Win32多線程程序設(shè)計(jì).華中科技大學(xué)出版社,2002[5](美)Cameron Hughes.C++面向?qū)ο蠖嗑€程編程.人民郵電出版社,2003 [6] 蔣東興,林鄂華.Windows Sockets網(wǎng)絡(luò)程序設(shè)計(jì)大全.清華大學(xué)出版社,1999[7] 謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)教程.人民郵電出版社[8] 雷斌,楊建華. Visual C++.人民郵電出版社[9] 朱桂英,張?jiān)粒?Visual C++網(wǎng)絡(luò)編程開(kāi)發(fā)與實(shí)踐.清華大學(xué)出版社[10] 曹衍龍.Visual C++網(wǎng)絡(luò)通信編程使用案例精選.人民郵電出版社,2007[11] 陳家琪.C程序設(shè)計(jì)教程.新華出版社,2004[12] 侯俊杰.深入淺出MFC第二版.華中科技大學(xué)出版社[13] 電子文檔.深入理解WINDOWS核心編程[14] 周楓,劉曉燕.軟件工程.重慶大學(xué)出版社[15] 貝爾實(shí)驗(yàn)室.高級(jí)C++程序設(shè)計(jì).機(jī)械工業(yè)出版社[16] 丁磊.Winsock開(kāi)發(fā)網(wǎng)絡(luò)通信程序的經(jīng)典入門(mén) [17] (美) Scott Meyers.Effective C++.機(jī)械工業(yè)出版社[18] Stevens.TCP/IP Illustrared.機(jī)械工業(yè)出版社[19] 許斌.JXTAJava P2P網(wǎng)絡(luò)編程技術(shù).清華大學(xué)出版社[20] 張炯.[21] .人民郵電出版社[22] 錢(qián)樂(lè)秋,趙文耘,牛軍鈺.軟件工程.清華大學(xué)出版社,2007[23] [美]Jeffrey Richter .Windows核心編程[24] [美]Charles Petzold.Windows程序設(shè)計(jì).北京大學(xué)出版社[25] 孫鑫,余安萍.VC++深入詳解.北京電子工業(yè)出版社[26] Raymond Mcleod.Management Information Systems.清華大學(xué)出版社,2005[27] David L..managing Information Systems.清華大學(xué)出版社,2007[28] Stanley B.Lippman ,Josee Lajoie.C++ Primer中文版[29] 溫秀梅.Visual C++面向?qū)ο蟪绦蛟O(shè)計(jì).華大學(xué)出版社.2005[30] 龔沛曾,楊志強(qiáng).C/C++程序設(shè)計(jì)教程.高等教育出版社.2004
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1