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

正文內(nèi)容

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

2025-07-03 16:56本頁(yè)面
  

【正文】 行控制命令SocketTCP/IP物理網(wǎng)絡(luò)支持TCP/IP協(xié)議的網(wǎng)絡(luò)建立連接 系統(tǒng)基本框架 。其中主控端的主要實(shí)現(xiàn)功能為,本地的配置管理、接收遠(yuǎn)程主機(jī)發(fā)送的桌面信息并繪制到組件顯示,實(shí)現(xiàn)監(jiān)視功能和發(fā)送控制信息實(shí)現(xiàn)對(duì)遠(yuǎn)程主機(jī)的控制功能;被控端的主要功能為本地配置管理、獲取并發(fā)送桌面圖片為主控端的監(jiān)視提供信息服務(wù)和響應(yīng)主控端的控制請(qǐng)求模塊,按控制信息進(jìn)行指定的操作。根據(jù)系統(tǒng)的實(shí)際需求,設(shè)計(jì)系統(tǒng)客戶端主界面包括遠(yuǎn)程控制選項(xiàng)和幫助選項(xiàng)。 遠(yuǎn)程控制選項(xiàng) 數(shù)據(jù)壓縮選項(xiàng)界面屬于一個(gè)分組框,包含六個(gè)單選按鈕,分別是無壓縮,霍夫曼壓縮,多遍霍夫曼壓縮,行程長(zhǎng)度和兩者綜合壓縮,還有兩個(gè)button,分別為確定和取消。 網(wǎng)格空間數(shù)目選項(xiàng)色彩模式選項(xiàng)界面,添加兩個(gè)單項(xiàng)選擇按鈕,分別為16色屏幕模式和256色屏幕模式,一個(gè)確定按鈕,一個(gè)取消按鈕。 連接服務(wù)器選項(xiàng) 服務(wù)器端界面服務(wù)器主界面,添加服務(wù)器,幫助菜單。 服務(wù)器選項(xiàng)開啟服務(wù)器選項(xiàng)界面,添加端口號(hào),IP地址的靜態(tài)文本控件和文本編輯控件。主框架模塊:負(fù)責(zé)Client的窗口消息處理。 DWORD dwLen。 LPBYTE pBuf。 char szString[81]。 if (WSAStartup(0x202,amp。 return 1。 nRet = WSAEnumProtocols(NULL,NULL,amp。 if (nRet == SOCKET_ERROR) { if (WSAGetLastError() != WSAENOBUFS) return 1。 nRet = SelectProtocols(SETFLAGS,NOTSETFLAGS,(LPWSAPROTOCOL_INFO)pBuf,amp。Protocol)。 sClient = WSASocket(AF_INET,SOCK_STREAM,IPPROTO_IP,NULL,0,SOCK_STREAM)。 nZero = 0。nZero,sizeof(nZero))。 = htons(port)。 if (connect(sClient,(struct sockaddr *)amp。\039。 sprintf(szString,Connect() failed: %d,WSAGetLastError())。 return 1。 服務(wù)器模塊設(shè)計(jì)與實(shí)現(xiàn)服務(wù)器實(shí)現(xiàn)原理遠(yuǎn)程監(jiān)控的思想是通過SOCKET和利用應(yīng)用程序的消息機(jī)制,監(jiān)控程序的客服端與被監(jiān)控程序的服務(wù)器端進(jìn)行數(shù)據(jù)交換,達(dá)到監(jiān)控與被監(jiān)控的目的。Server remote control所需要的模塊如下。編碼解碼模塊:負(fù)責(zé)對(duì)數(shù)據(jù)進(jìn)行哈夫曼壓縮。主框架模塊:負(fù)責(zé)Server端窗口的消息處理。 WSAPROTOCOL_INFO Protocol。 int nZero = 0。 HANDLE hThread。 char szClientIP[81]。 struct sockaddr_in local,client。 dwLen = 0。dwLen)。 } pBuf = malloc(dwLen)。dwLen,amp。 Listen = WSASocket(AF_INET,SOCK_STREAM,IPPROTO_IP,NULL,0,SOCK_STREAM)。 MessageBox(NULL,szString,Remote Server,MB_OK)。 } = htonl(INADDR_ANY)。 = htons(gPort)。local,sizeof(local)) == SOCKET_ERROR) { sprintf(szString,bind() failed: %d\n, WSAGetLastError())。 return 1。這是服務(wù)器套接字的建立,綁定,監(jiān)聽,最后到接收連接的過程。但是對(duì)于有些程序來說,無法提供外設(shè)的輸入,而需要自己應(yīng)用程序模擬這些外設(shè)消息,并將這些消息直接發(fā)送到系統(tǒng)的消息隊(duì)列中去。這樣客戶端可以隨意的操縱服務(wù)器端的應(yīng)用程序,所以也就需要服務(wù)器端程序向操作系統(tǒng)發(fā)送來自客服端的任何鼠標(biāo)鍵盤的模擬消息。程序中想要模擬一個(gè)鍵被按下和彈起應(yīng)這樣寫:keybd_event((BYTE)vk,(BYTE)vk,0,0)keybd_event((BYTE)vk,(BYTE)vk,KEYEVENTF_KEYUP,0)mouse_event函數(shù)VOID mouse_event(DWORD dwFlags,DWORD dx,DWORD dy,DWORDdwData,ULONG_PTR dwExtraInfo)dwFlags:定義各種鼠標(biāo)移動(dòng)和點(diǎn)擊的標(biāo)志。正值表示滾輪向前旋轉(zhuǎn)。滾輪被按下的標(biāo)志是WHEEL_DELTAdwExtraInfo:定義與鼠標(biāo)事件關(guān)聯(lián)的額外的信息。 流數(shù)據(jù)的實(shí)現(xiàn)首先啟動(dòng)Sever Remote Control的程序,開啟監(jiān)聽端口,將CLIENT REMOTE CONTROL 連接到服務(wù)器的端口,之后SERVER開啟一個(gè)與客服端通信的線程這個(gè)線程專門負(fù)責(zé)接收和處理客服端發(fā)送過來的消息,并在本機(jī)上執(zhí)行相關(guān)命令。而當(dāng)客服端連接到服務(wù)器端之后,客服端程序就可以根據(jù)服務(wù)器端傳過來的屏幕數(shù)據(jù)在本地機(jī)上顯示出屏幕內(nèi)容,從而作出各種鼠標(biāo),鍵盤操作,以及一些通用的更新。服務(wù)器端再根據(jù)這些消息做出相應(yīng)的操作。一個(gè)可行的辦法是將屏幕的劃分成網(wǎng)格塊,屏幕的刷新是以網(wǎng)格為單位的,只需要將這些變化的屏幕數(shù)據(jù)發(fā)送給客服端即可。很好理解:要使總長(zhǎng)最短,出現(xiàn)越多次的符號(hào)的編碼就要越短。哈夫曼編碼(Huffman Coding)是一種編碼方式,以哈夫曼樹—即最優(yōu)二叉樹,帶權(quán)路徑長(zhǎng)度最小的二叉樹,經(jīng)常應(yīng)用于數(shù)據(jù)壓縮。這一術(shù)語是指使用一張?zhí)厥獾木幋a表將源字符(例如某文件中的一個(gè)符號(hào))進(jìn)行編碼。例如,在英文中,e的出現(xiàn)概率很高,而z的出現(xiàn)概率則最低。用普通的表示方法時(shí),每個(gè)英文字母均占用一個(gè)字節(jié)(byte),即8個(gè)位。倘若我們能實(shí)現(xiàn)對(duì)于英文中各個(gè)字母出現(xiàn)概率的較準(zhǔn)確的估算,就可以大幅度提高無損壓縮的比例。是一個(gè)比較復(fù)雜的技術(shù):Windows程序不僅在輸入上與DOS程序不同,而且在程序輸出上也與DOS有著很大不同,主要表現(xiàn)為:DOS程序獨(dú)占整個(gè)顯示屏幕,其他程序在后臺(tái)等待。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提供了豐富的圖形函數(shù)用于圖形輸出,這對(duì)輸出圖形是相當(dāng)方便的,但是由于字符也被作為圖形來處理,輸出時(shí)的定位要比DOS復(fù)雜的多。 比如,在DOS字符方式下,我們可以寫出如下程序用于輸出兩行文字:printf(“Hello,\n”)。而在Windows下要輸出這兩行文字所做的工作要復(fù)雜的多。另外,由于Windows提供了豐富的字體,所以在計(jì)算坐標(biāo)偏移量時(shí)還必須知道當(dāng)前所用字體的高度和寬度。在DOS下編寫過Foxpro程序的讀者常常會(huì)有這樣的體會(huì),在編寫打印報(bào)表程序時(shí),要針對(duì)不同的打印機(jī)在程序中插入不同的打印控制碼,用以控制換頁(yè)、字體設(shè)置等選項(xiàng)。而Windows下的應(yīng)用程序使用圖形設(shè)備接口(GDI)來進(jìn)行圖形輸出。對(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ī)上輸出矩形。Windows的圖形輸出是由圖形設(shè)備接口(GDI)來完成的,GDI是系統(tǒng)原始的圖形輸出庫(kù),它用于在屏幕上輸出像素、在打印機(jī)上輸出硬拷貝以及繪制Windows用戶界面。GDI提供了大量用于圖形輸出的函數(shù),這些函數(shù)接收應(yīng)用程序發(fā)出來的繪圖請(qǐng)求、處理繪圖數(shù)據(jù)并根據(jù)當(dāng)前使用設(shè)備調(diào)用相應(yīng)的設(shè)備驅(qū)動(dòng)程序產(chǎn)生繪圖輸出。GDI識(shí)別四種類型的設(shè)備:顯示屏幕、硬拷貝設(shè)備(打印機(jī)、繪圖機(jī))、位圖和圖元文件。一個(gè)偽設(shè)備提供了一種在RAM里或磁盤里存儲(chǔ)圖象的方法。圖元文件保存的是GDI函數(shù)的調(diào)用和調(diào)用參數(shù),占用內(nèi)存較少,但依賴于GDI,因此不可能用某個(gè)設(shè)備來創(chuàng)建圖元文件,而且速度比位圖要慢。當(dāng)程序在一個(gè)窗口中繪圖時(shí),首先建立缺省的繪圖坐標(biāo),原點(diǎn)(0,0)位于窗口用戶區(qū)的左上角。(2)繪圖僅對(duì)于本窗口有效,圖形在窗口邊界會(huì)被自動(dòng)裁剪,也就是說窗口中的每一個(gè)圖形都不會(huì)越出邊界。這樣,你在窗口內(nèi)繪圖時(shí),就不必?fù)?dān)心會(huì)偶然覆蓋其他程序的窗口,從而保證了Windows下同時(shí)運(yùn)行多個(gè)任務(wù)時(shí)各個(gè)窗口的獨(dú)立性。選擇一臺(tái)主機(jī)安裝服務(wù)器端程序作為系統(tǒng)的服務(wù)機(jī),服務(wù)器主機(jī)的配置為英特爾處理器Pentium DualCore T4200 ,1GB內(nèi)存,WindowXP操作系統(tǒng),稱為主機(jī)A??蛻魴C(jī)的配置為Intel Pentium ,512MB內(nèi)存,Windows XP操作系統(tǒng),稱為主機(jī)B。 運(yùn)行程序結(jié)果點(diǎn)擊服務(wù)器選項(xiàng),并選擇開啟服務(wù)器,這時(shí),服務(wù)器端進(jìn)入監(jiān)聽狀態(tài),等待客戶端的連接。 客戶端運(yùn)行并選擇連接 準(zhǔn)備連接服務(wù)器連接服務(wù)器后,客戶端出現(xiàn)服務(wù)器端的桌面信息。 改變色彩模式 改變模式后,顯示左面的色彩變得鮮明,不再模糊不清。 顯示界面網(wǎng)格 顯示網(wǎng)格后。 更改網(wǎng)格數(shù)目更改網(wǎng)格數(shù)后,桌面顯示的網(wǎng)格更加密集。 右擊桌面文件夾客戶端鍵盤鍵入(O)并打開文件夾。 選擇攝像頭功能攝像頭打開,出現(xiàn)服務(wù)器所在環(huán)境實(shí)時(shí)圖像。 打開桌面播放器點(diǎn)擊播放,桌面顯示服務(wù)器端視頻正常播放。服務(wù)器數(shù)據(jù)可通過網(wǎng)格形式傳送給客戶端,可選擇顯示網(wǎng)格,并更改網(wǎng)格數(shù)量。結(jié) 論本文運(yùn)用Socket網(wǎng)絡(luò)編程的知識(shí),以VC++,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)遠(yuǎn)程桌面控制系統(tǒng)。研究所用關(guān)鍵技術(shù)后,本文對(duì)系統(tǒng)進(jìn)行了總體設(shè)計(jì),主要分為客戶端模塊和服務(wù)器模塊和兩模塊間進(jìn)行消息傳遞的模塊,流數(shù)據(jù)模塊等,并對(duì)系統(tǒng)的界面和各個(gè)模塊功能進(jìn)行了具體實(shí)現(xiàn)。本系統(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ì)被控端的操作。但是,它是一把雙刃劍,人們可以方便地用它作為一個(gè)管理程序來管理、監(jiān)視和使用網(wǎng)絡(luò)中的資源,也可被用作探視別人口令、資料和攻擊、控制別人計(jì)算機(jī)的工具。通過老師的耐心幫助和細(xì)心指導(dǎo),不但使我對(duì)通信工程學(xué)科所學(xué)的知識(shí)有了更加系統(tǒng)、實(shí)際和全面的認(rèn)識(shí),更使我對(duì)人生價(jià)值觀有了深層次的認(rèn)知,堅(jiān)定了我的理想信念。感謝我曾學(xué)習(xí)引用的各參考文獻(xiàn)的作者,通過對(duì)你們著作、學(xué)說和論文的學(xué)習(xí)參考,使我對(duì)我研究的課題有了更深意義的追求和認(rèn)識(shí)。還要感謝幫助和鼓勵(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)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1