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

正文內(nèi)容

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

2025-06-18 16:56本頁面
  

【正文】 REMOTE CONTROL 連接到服務(wù)器的端口,之后SERVER開啟一個(gè)與客服端通信的線程這個(gè)線程專門負(fù)責(zé)接收和處理客服端發(fā)送過來的消息,并在本機(jī)上執(zhí)行相關(guān)命令。然后將當(dāng)前改變區(qū)域的屏幕的內(nèi)容發(fā)送到客服端。而當(dāng)客服端連接到服務(wù)器端之后,客服端程序就可以根據(jù)服務(wù)器端傳過來的屏幕數(shù)據(jù)在本地機(jī)上顯示出屏幕內(nèi)容,從而作出各種鼠標(biāo),鍵盤操作,以及一些通用的更新。這些操作會(huì)通過SOCKET傳給服務(wù)器端。服務(wù)器端再根據(jù)這些消息做出相應(yīng)的操作。需要注意的是,服務(wù)器端刷屏的時(shí)候并不是將整個(gè)屏幕都傳給客服端,因?yàn)檎麄€(gè)屏幕圖片的數(shù)據(jù)量比較大,當(dāng)前網(wǎng)絡(luò)負(fù)載也不是很穩(wěn)定的條件下,該程序是很不穩(wěn)定的。一個(gè)可行的辦法是將屏幕的劃分成網(wǎng)格塊,屏幕的刷新是以網(wǎng)格為單位的,只需要將這些變化的屏幕數(shù)據(jù)發(fā)送給客服端即可。 圖形編碼該程序數(shù)據(jù)圖型編碼采用的是C庫中的哈夫曼壓縮編碼技術(shù),下面稍作解釋以下:哈夫曼編碼的原理是:一個(gè)符號(hào)發(fā)生頻率越高,其碼長越短,反之則越長。很好理解:要使總長最短,出現(xiàn)越多次的符號(hào)的編碼就要越短。 打個(gè)不恰當(dāng)?shù)谋确?,現(xiàn)在用的最多的幾個(gè)漢字“個(gè)”“的”“們”“什”“么”什么的筆畫不是都很少嗎?這就是文字演變的規(guī)律,也就是哈夫曼編碼的原理。哈夫曼編碼(Huffman Coding)是一種編碼方式,以哈夫曼樹—即最優(yōu)二叉樹,帶權(quán)路徑長度最小的二叉樹,經(jīng)常應(yīng)用于數(shù)據(jù)壓縮。在計(jì)算機(jī)信息處理中,“哈夫曼編碼”是一種一致性編碼法(又稱“熵編碼法”),用于數(shù)據(jù)的無損耗壓縮。這一術(shù)語是指使用一張?zhí)厥獾木幋a表將源字符(例如某文件中的一個(gè)符號(hào))進(jìn)行編碼。這張編碼表的特殊之處在于,它是根據(jù)每一個(gè)源字符出現(xiàn)的估算概率而建立起來的(出現(xiàn)概率高的字符使用較短的編碼,反之出現(xiàn)概率低的則使用較長的編碼,這便使編碼之后的字符串的平均期望長度降低,從而達(dá)到無損壓縮數(shù)據(jù)的目的)。例如,在英文中,e的出現(xiàn)概率很高,而z的出現(xiàn)概率則最低。當(dāng)利用哈夫曼編碼對(duì)一篇英文進(jìn)行壓縮時(shí),e極有可能用一個(gè)位(bit)來表示,而z則可能花去 25個(gè)位(不是26)。用普通的表示方法時(shí),每個(gè)英文字母均占用一個(gè)字節(jié)(byte),即8個(gè)位。二者相比,e使用了一般編碼的1/8的長度,z則使用了 3倍多。倘若我們能實(shí)現(xiàn)對(duì)于英文中各個(gè)字母出現(xiàn)概率的較準(zhǔn)確的估算,就可以大幅度提高無損壓縮的比例。下面在補(bǔ)充介紹下WINDOWS圖形輸入輸出處理對(duì)象GDI。是一個(gè)比較復(fù)雜的技術(shù):Windows程序不僅在輸入上與DOS程序不同,而且在程序輸出上也與DOS有著很大不同,主要表現(xiàn)為:DOS程序獨(dú)占整個(gè)顯示屏幕,其他程序在后臺(tái)等待。而Windows的每一個(gè)應(yīng)用程序?qū)ζ聊坏囊徊糠诌M(jìn)行處理。DOS程序可以直接往屏幕上輸出,而Windows是一個(gè)多窗口的操作系統(tǒng),由操作系統(tǒng)來統(tǒng)一管理屏幕輸出;每個(gè)窗口要輸出內(nèi)容時(shí),必須首先向操作系統(tǒng)發(fā)出請(qǐng)求(GDI請(qǐng)求),由操作系統(tǒng)完成實(shí)際的屏幕輸出工作。Windows程序的所有輸出都是圖形。Windows提供了豐富的圖形函數(shù)用于圖形輸出,這對(duì)輸出圖形是相當(dāng)方便的,但是由于字符也被作為圖形來處理,輸出時(shí)的定位要比DOS復(fù)雜的多。 比如,在DOS字符方式下,我們可以寫出如下程序用于輸出兩行文字:printf(“Hello,\n”)。printf(“This is DOS program.\n”)。而在Windows下要輸出這兩行文字所做的工作要復(fù)雜的多。因?yàn)閃indows輸出是基于圖形的,它輸出文本時(shí)不會(huì)象DOS那樣自動(dòng)換行,而必須以像素為單位精確定位每一行的輸出位置。另外,由于Windows提供了豐富的字體,所以在計(jì)算坐標(biāo)偏移量時(shí)還必須知道當(dāng)前所用字體的高度和寬度。Windows下的輸出是設(shè)備無關(guān)的。在DOS下編寫過Foxpro程序的讀者常常會(huì)有這樣的體會(huì),在編寫打印報(bào)表程序時(shí),要針對(duì)不同的打印機(jī)在程序中插入不同的打印控制碼,用以控制換頁、字體設(shè)置等選項(xiàng)。這樣的程序編寫起來繁瑣,而且不容易移植(因?yàn)閾Q一臺(tái)不同型號(hào)的打印機(jī)就要重新修改程序)。而Windows下的應(yīng)用程序使用圖形設(shè)備接口(GDI)來進(jìn)行圖形輸出。GDI屏蔽了不同設(shè)備的差異,提供了設(shè)備無關(guān)的圖形輸出能力,Windows應(yīng)用程序只要發(fā)出設(shè)備無關(guān)的GDI請(qǐng)求(如調(diào)用Rectangle畫一個(gè)矩形),由GDI去完成實(shí)際的圖形輸出操作。對(duì)于一臺(tái)具有打印矩形功能的PostScript打印機(jī)來說,GDI可能只需要將矩形數(shù)據(jù)傳給驅(qū)動(dòng)程序就可以了,然后由驅(qū)動(dòng)程序產(chǎn)生PostScript命令繪制出相應(yīng)的矩形;而對(duì)于一臺(tái)沒有矩形輸出功能的點(diǎn)陣打印機(jī)來說,GDI可能需要將矩形轉(zhuǎn)化為四條線,然后向驅(qū)動(dòng)程序發(fā)出畫線的指令,在打印機(jī)上輸出矩形。當(dāng)然,這兩種輸出在用戶看來并沒有什么區(qū)別。Windows的圖形輸出是由圖形設(shè)備接口(GDI)來完成的,GDI是系統(tǒng)原始的圖形輸出庫,它用于在屏幕上輸出像素、在打印機(jī)上輸出硬拷貝以及繪制Windows用戶界面。GDI提供兩種基本服務(wù):創(chuàng)建圖形輸出和存儲(chǔ)圖象。GDI提供了大量用于圖形輸出的函數(shù),這些函數(shù)接收應(yīng)用程序發(fā)出來的繪圖請(qǐng)求、處理繪圖數(shù)據(jù)并根據(jù)當(dāng)前使用設(shè)備調(diào)用相應(yīng)的設(shè)備驅(qū)動(dòng)程序產(chǎn)生繪圖輸出。這些繪圖函數(shù)分為三類:一是文字輸出,二是矢量圖形函數(shù),用于畫線、圓等幾何圖形,三是光柵(位圖)圖形函數(shù),用于繪制位圖。GDI識(shí)別四種類型的設(shè)備:顯示屏幕、硬拷貝設(shè)備(打印機(jī)、繪圖機(jī))、位圖和圖元文件。前兩者是物理設(shè)備,后兩者是偽設(shè)備。一個(gè)偽設(shè)備提供了一種在RAM里或磁盤里存儲(chǔ)圖象的方法。位圖存放的是圖形的點(diǎn)位信息,占用較多的內(nèi)存,但速度很快。圖元文件保存的是GDI函數(shù)的調(diào)用和調(diào)用參數(shù),占用內(nèi)存較少,但依賴于GDI,因此不可能用某個(gè)設(shè)備來創(chuàng)建圖元文件,而且速度比位圖要慢。GDI的圖形輸出是面向窗口的,面向窗口包含兩層含義:(1)每個(gè)窗口作為一個(gè)獨(dú)立的繪圖接口來處理,有它自己的繪圖坐標(biāo)。當(dāng)程序在一個(gè)窗口中繪圖時(shí),首先建立缺省的繪圖坐標(biāo),原點(diǎn)(0,0)位于窗口用戶區(qū)的左上角。每個(gè)窗口必須獨(dú)立的維護(hù)自己的輸出。(2)繪圖僅對(duì)于本窗口有效,圖形在窗口邊界會(huì)被自動(dòng)裁剪,也就是說窗口中的每一個(gè)圖形都不會(huì)越出邊界。即使想越出邊界,也是不可能的,窗口會(huì)自動(dòng)的防止其他窗口傳過來的任何像素。這樣,你在窗口內(nèi)繪圖時(shí),就不必?fù)?dān)心會(huì)偶然覆蓋其他程序的窗口,從而保證了Windows下同時(shí)運(yùn)行多個(gè)任務(wù)時(shí)各個(gè)窗口的獨(dú)立性。5 系統(tǒng)實(shí)施及測(cè)試 測(cè)試環(huán)境搭建本系統(tǒng)測(cè)試的網(wǎng)絡(luò)環(huán)境為100M的以太網(wǎng)。選擇一臺(tái)主機(jī)安裝服務(wù)器端程序作為系統(tǒng)的服務(wù)機(jī),服務(wù)器主機(jī)的配置為英特爾處理器Pentium DualCore T4200 ,1GB內(nèi)存,WindowXP操作系統(tǒng),稱為主機(jī)A。選擇另一臺(tái)主機(jī)安裝客戶端程序,作為客戶機(jī)??蛻魴C(jī)的配置為Intel Pentium ,512MB內(nèi)存,Windows XP操作系統(tǒng),稱為主機(jī)B。 系統(tǒng)功能和性能測(cè)試 客戶端顯示測(cè)試在主機(jī)A運(yùn)行服務(wù)器程序。 運(yùn)行程序結(jié)果點(diǎn)擊服務(wù)器選項(xiàng),并選擇開啟服務(wù)器,這時(shí),服務(wù)器端進(jìn)入監(jiān)聽狀態(tài),等待客戶端的連接。 選擇服務(wù)器模式在主機(jī)B上運(yùn)行客戶端程序,點(diǎn)擊遠(yuǎn)程控制選項(xiàng),并選擇連接服務(wù)器。 客戶端運(yùn)行并選擇連接 準(zhǔn)備連接服務(wù)器連接服務(wù)器后,客戶端出現(xiàn)服務(wù)器端的桌面信息。 顯示服務(wù)器桌面點(diǎn)擊遠(yuǎn)程控制選項(xiàng),選擇色彩模式選項(xiàng),默認(rèn)為16色屏幕模式,改為256色。 改變色彩模式 改變模式后,顯示左面的色彩變得鮮明,不再模糊不清。 服務(wù)器待接收文件點(diǎn)擊遠(yuǎn)程控制,選擇網(wǎng)格空間數(shù)目選項(xiàng)。 顯示界面網(wǎng)格 顯示網(wǎng)格后。 顯示網(wǎng)格將水平網(wǎng)格數(shù),垂直網(wǎng)格數(shù),分別改為原來的二倍。 更改網(wǎng)格數(shù)目更改網(wǎng)格數(shù)后,桌面顯示的網(wǎng)格更加密集。 服務(wù)器向客戶端傳文件 鼠標(biāo)鍵盤功能測(cè)試滑動(dòng)鼠標(biāo),并右擊被控端桌面的文件夾。 右擊桌面文件夾客戶端鍵盤鍵入(O)并打開文件夾。 打開文件夾并選擇攝像頭功能。 選擇攝像頭功能攝像頭打開,出現(xiàn)服務(wù)器所在環(huán)境實(shí)時(shí)圖像。 開啟攝像頭打開桌面迅雷視頻播放器。 打開桌面播放器點(diǎn)擊播放,桌面顯示服務(wù)器端視頻正常播放。 視頻播放 測(cè)試結(jié)果服務(wù)器開啟后,客戶端可實(shí)現(xiàn)連接,連接成功后,客戶端顯示服務(wù)器端的桌面情況,客戶端可隨時(shí)改變數(shù)據(jù)壓縮方式,并可選擇不壓縮,客戶端還可以選擇色彩模式,256色的明顯比16色模式要清晰,分辨率提高。服務(wù)器數(shù)據(jù)可通過網(wǎng)格形式傳送給客戶端,可選擇顯示網(wǎng)格,并更改網(wǎng)格數(shù)量??蛻舳说氖髽?biāo),可自由在服務(wù)器方移動(dòng),實(shí)現(xiàn)鼠標(biāo)的正常功能,測(cè)試中,鼠標(biāo)成功打開服務(wù)器房文件夾,攝像頭,和視頻播放器,成功實(shí)現(xiàn)遠(yuǎn)程控制,并可通過攝像頭實(shí)時(shí)監(jiān)控服務(wù)器端的具體情況。結(jié) 論本文運(yùn)用Socket網(wǎng)絡(luò)編程的知識(shí),以VC++,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)遠(yuǎn)程桌面控制系統(tǒng)。首先研究了網(wǎng)絡(luò)編程的理論基礎(chǔ)以及遠(yuǎn)程控制系統(tǒng)涉及到的關(guān)鍵技術(shù),系統(tǒng)需要通過Windows Socket技術(shù)和TCP/IP下的C/S(客戶端/服務(wù)器)架構(gòu)進(jìn)行Socket連接,在傳輸桌面信息時(shí),要通過圖像編碼技術(shù)對(duì)圖像進(jìn)行壓縮處理,主要的方法包括,霍夫曼壓縮,多變霍夫曼壓縮,Run Length編碼壓縮等。研究所用關(guān)鍵技術(shù)后,本文對(duì)系統(tǒng)進(jìn)行了總體設(shè)計(jì),主要分為客戶端模塊和服務(wù)器模塊和兩模塊間進(jìn)行消息傳遞的模塊,流數(shù)據(jù)模塊等,并對(duì)系統(tǒng)的界面和各個(gè)模塊功能進(jìn)行了具體實(shí)現(xiàn)。本文設(shè)計(jì)并實(shí)現(xiàn)了分塊截取屏幕的算法,應(yīng)用這一算法可以減少需要傳送的數(shù)據(jù)量,大大的降低了網(wǎng)絡(luò)的負(fù)載,同時(shí)又能及時(shí)準(zhǔn)確地真實(shí)再現(xiàn)被控端當(dāng)前的屏幕信息。本系統(tǒng)可通過網(wǎng)際、網(wǎng)內(nèi),對(duì)服務(wù)器主機(jī)桌面實(shí)現(xiàn)遠(yuǎn)程控制,控制端可以應(yīng)用鼠標(biāo)和鍵盤如同操作本機(jī)一樣控制被控端,這樣可以實(shí)現(xiàn)控制端對(duì)被控端的操作。本系統(tǒng)目前使用效果良好。但是,它是一把雙刃劍,人們可以方便地用它作為一個(gè)管理程序來管理、監(jiān)視和使用網(wǎng)絡(luò)中的資源,也可被用作探視別人口令、資料和攻擊、控制別人計(jì)算機(jī)的工具。致 謝感謝我的論文指導(dǎo)老師,在本論文寫作的過程中得到了老師的幫助和鼓勵(lì)。通過老師的耐心幫助和細(xì)心指導(dǎo),不但使我對(duì)通信工程學(xué)科所學(xué)的知識(shí)有了更加系統(tǒng)、實(shí)際和全面的認(rèn)識(shí),更使我對(duì)人生價(jià)值觀有了深層次的認(rèn)知,堅(jiān)定了我的理想信念。在我今后的人生道路中,我將一直謹(jǐn)記老師對(duì)我的教導(dǎo)。感謝我曾學(xué)習(xí)引用的各參考文獻(xiàn)的作者,通過對(duì)你們著作、學(xué)說和論文的學(xué)習(xí)參考,使我對(duì)我研究的課題有了更深意義的追求和認(rèn)識(shí)。感謝我大學(xué)里的所有老師,是你們提高了我的素質(zhì)修養(yǎng),豐富了我的人生閱歷,教會(huì)了我書本上學(xué)不到的知識(shí),沒有你們無私的付出,我永遠(yuǎn)會(huì)在無知的迷茫中徘徊躊躇。還要感謝幫助和鼓勵(lì)我的同學(xué)們,是你們的幫助和鼓勵(lì)使我在遇到困難時(shí)及時(shí)恢復(fù)信心!由于本人知識(shí)水平有限,文中漏處望各位老師指點(diǎn)周正,不勝感激!參考文獻(xiàn)[1] 明日科技.Visual C++程序開發(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ò)編程開發(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開發(fā)網(wǎng)絡(luò)通信程序的經(jīng)典入門 [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] 錢樂秋,趙文耘,牛軍鈺.軟件工程.清華大學(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)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1