2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩38頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  摘 要</b></p><p>  隨著計(jì)算機(jī)和通信技術(shù)的發(fā)展,遠(yuǎn)程監(jiān)控技術(shù)與網(wǎng)絡(luò)技術(shù)的密切結(jié)合使計(jì)算機(jī)監(jiān)控軟件在工業(yè)自動(dòng)化領(lǐng)域空前成功,這對(duì)提高企業(yè)的生產(chǎn)效率發(fā)揮了巨大的作用。同時(shí)也給計(jì)算機(jī)監(jiān)控軟件朝著辦公自動(dòng)化領(lǐng)域發(fā)展起到巨大的推動(dòng)作用。</p><p>  本文討論遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)思路和開(kāi)發(fā)方法。首先對(duì)開(kāi)發(fā)該系統(tǒng)使

2、用到的一些基本原理做一個(gè)簡(jiǎn)單的介紹包括:RMON標(biāo)準(zhǔn)、開(kāi)發(fā)采用的平臺(tái)。同時(shí)重點(diǎn)分析開(kāi)發(fā)模式(客戶(hù)端\服務(wù)器端模式)、網(wǎng)絡(luò)通信技術(shù)、多線(xiàn)程技術(shù)以及這些核心技術(shù)在該系統(tǒng)開(kāi)發(fā)過(guò)程中的應(yīng)用。其次介紹面向?qū)ο蟪绦蛟O(shè)計(jì)思想以及方法、確定該系統(tǒng)使用的開(kāi)發(fā)方法后,從系統(tǒng)的工作流程出發(fā)分別從客戶(hù)端、服務(wù)器端各功能模塊的設(shè)計(jì)和實(shí)現(xiàn)做一個(gè)詳細(xì)的介紹。最后對(duì)本文對(duì)該系統(tǒng)開(kāi)發(fā)的結(jié)果做一個(gè)總結(jié),并且對(duì)指出該系統(tǒng)的擴(kuò)展方向。</p><p>

3、  遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)是基于C/S模式的應(yīng)用系統(tǒng);客戶(hù)端通過(guò)獲取服務(wù)器端網(wǎng)絡(luò)狀態(tài),以及相關(guān)的進(jìn)程等信息從而實(shí)現(xiàn)對(duì)該遠(yuǎn)程網(wǎng)絡(luò)管理功能。</p><p>  該系統(tǒng)于Windows XP sp2下開(kāi)發(fā),采用Visual Basic2005作為開(kāi)發(fā)工具。</p><p>  關(guān)鍵詞:計(jì)算機(jī);監(jiān)控;網(wǎng)絡(luò)管理;客戶(hù)/服務(wù)器模式</p><p><b>  Abs

4、tract</b></p><p>  With the development of computer and communications technology, remote monitoring technology and network technology closely integration makes computer monitoring software succeed in

5、the areas of industrial automation, and play a tremendous role in improving the production efficiency. This will also greatly promote computer monitoring software turning to the field of office automation </p><

6、;p>  The dissertation discusses the design and realization of a Remote computer network management system. Firstly, discuss some of the basic theory briefly including RMON standards and the development of the platform

7、. Then while focusing on the analysis of the development model (the client \server pattern), network communications technology, Multithreading technology, and the core technology in the system development process applica

8、tions. Secondly, giving an introduction of object-oriented programmi</p><p>  Remote computer network management system is based on Client/Server mode; Client achieved a remote network management functions t

9、hrough the server’s network state and the relevant information of the process.</p><p>  The system developed in Windows XP sp2, with visual basic 2005 as a development tool.</p><p>  Keywords:co

10、mputer;monitoring;network Management;client/server pattern</p><p><b>  目 錄</b></p><p><b>  第一章 緒論1</b></p><p>  1.1 課題研究背景1</p><p>  1.2 國(guó)內(nèi)

11、外研究現(xiàn)狀2</p><p>  1.3 本文的主要工作3</p><p>  第二章 系統(tǒng)使用基本概念4</p><p>  2.1 RMON4</p><p>  2.2 C/S軟件開(kāi)發(fā)模式4</p><p>  2.3 網(wǎng)絡(luò)通信技術(shù)6</p><p>  2.3.1 socke

12、t簡(jiǎn)介6</p><p>  2.3.2 socket套接字編程原理7</p><p>  2.3.3 通信方式選擇8</p><p>  2.3.4 套接字工作流程9</p><p>  2.4 多線(xiàn)程技術(shù)10</p><p>  2.5 開(kāi)發(fā)平臺(tái)-------Visual Basic 200511<

13、;/p><p>  第三章 面向?qū)ο蟪绦蛟O(shè)計(jì)方法12</p><p>  3.1 面向?qū)ο笏枷?2</p><p>  3.2 面向?qū)ο箝_(kāi)發(fā)在系統(tǒng)中的應(yīng)用12</p><p>  第四章 遠(yuǎn)程計(jì)算機(jī)管理軟件實(shí)現(xiàn)14</p><p>  4.1 系統(tǒng)要求及功能要求14</p><p>  4

14、.1.1 系統(tǒng)要求14</p><p>  4.1.2 功能要求14</p><p>  4.2 系統(tǒng)采用主要技術(shù)15</p><p>  4.3 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理軟件的設(shè)計(jì)框架16</p><p>  4.4 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)核心功能及實(shí)現(xiàn)17</p><p>  4.4.1系統(tǒng)界面設(shè)計(jì)17<

15、;/p><p>  4.4.2 通信模塊18</p><p>  4.5 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)客戶(hù)端設(shè)計(jì)實(shí)現(xiàn)20</p><p>  4.5.1 客戶(hù)端應(yīng)用的實(shí)現(xiàn)功能20</p><p>  4.5.2 系統(tǒng)客戶(hù)端子功能模塊劃分20</p><p>  4.5.3 主要子模塊設(shè)計(jì)實(shí)現(xiàn)21</p>

16、<p>  4.6 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)的服務(wù)器端設(shè)計(jì)實(shí)現(xiàn)28</p><p>  4.6.1 服務(wù)器端開(kāi)機(jī)自啟動(dòng)的實(shí)現(xiàn)28</p><p>  4.6.2 服務(wù)器端托盤(pán)運(yùn)行模式29</p><p>  4.6.3 網(wǎng)絡(luò)監(jiān)控?cái)?shù)據(jù)采集30</p><p>  第五章 結(jié)束語(yǔ)33</p><p>  

17、5.1 工作成果33</p><p>  5.2 工作展望33</p><p><b>  致 謝34</b></p><p><b>  參考文獻(xiàn)35</b></p><p><b>  第一章 緒論</b></p><p>  遠(yuǎn)程計(jì)算

18、機(jī)網(wǎng)絡(luò)管理系統(tǒng)是采用C/S模式主要研究了網(wǎng)絡(luò)狀態(tài)監(jiān)控的關(guān)鍵技術(shù)以及如何實(shí)現(xiàn)該系統(tǒng)。該系統(tǒng)利用現(xiàn)代通信技術(shù)、Socket編程、數(shù)據(jù)采集、多線(xiàn)程以及面向?qū)ο蟮溶浖_(kāi)發(fā)技術(shù)實(shí)現(xiàn)系統(tǒng)管理、用戶(hù)驗(yàn)證、網(wǎng)絡(luò)監(jiān)控、數(shù)據(jù)顯示等功能;其優(yōu)點(diǎn)是具有良好的人機(jī)交互性,便于用戶(hù)使用,同時(shí)不需要硬件設(shè)備的支持;具有較好的性?xún)r(jià)比。以遠(yuǎn)程計(jì)算機(jī)的網(wǎng)絡(luò)管理為中心,實(shí)現(xiàn)信息,資源的共享和遠(yuǎn)程管理。</p><p>  第一章主要介紹本課題的提出、

19、研究背景,以及國(guó)內(nèi)外發(fā)展現(xiàn)狀;本章最后對(duì)本文的主要工作做了一個(gè)簡(jiǎn)單的介紹。</p><p>  1.1 課題研究背景</p><p>  自從1946年馮·諾伊曼提出“程序存儲(chǔ)”和“程序計(jì)算”,從而制造出人類(lèi)歷史上的第一臺(tái)計(jì)算機(jī)以來(lái),計(jì)算機(jī)就以無(wú)法抵擋的威力深入到人們生活的各個(gè)領(lǐng)域。而1969年開(kāi)始建立名為ARPNET的網(wǎng)絡(luò)開(kāi)始,到現(xiàn)在internet的全方位普及,計(jì)算機(jī)時(shí)刻都在

20、深刻的影響著我們的生活。近年由于互聯(lián)網(wǎng)的飛速發(fā)展,計(jì)算機(jī)的應(yīng)用逐漸擴(kuò)展到了各個(gè)行業(yè)的內(nèi)部,為了實(shí)現(xiàn)內(nèi)部資源的共享,局域網(wǎng)的應(yīng)用得到了飛快的發(fā)展。為了更方便的獲取信息和實(shí)現(xiàn)資源共享,越來(lái)越多的公司企業(yè)、學(xué)校以及各種職能部門(mén)都實(shí)現(xiàn)了互聯(lián)網(wǎng)的連接。毋庸置疑在信息化社會(huì)的今天,極大的方便了企業(yè)內(nèi)部和企業(yè)間的協(xié)作,提高了企業(yè)的工作效率。然而利用網(wǎng)絡(luò)觀看網(wǎng)絡(luò)電視,聊QQ、瀏覽不良網(wǎng)站、或者由于誤操作、木馬病毒入侵造成企業(yè)秘密泄漏等也給企業(yè)造成很大的

21、負(fù)面影響。據(jù)國(guó)外數(shù)據(jù)統(tǒng)計(jì),開(kāi)通互聯(lián)網(wǎng)辦公的企業(yè)中,企業(yè)員工平均每天有超過(guò)二分之一的上班時(shí)間用來(lái)上網(wǎng)聊天,瀏覽娛樂(lè)色情網(wǎng)站或者處理個(gè)人事務(wù)。這既浪費(fèi)了有限網(wǎng)絡(luò)資源,使網(wǎng)絡(luò)得不到充分的利用,也影響了正常的辦公業(yè)務(wù)。因此如何加強(qiáng)對(duì)計(jì)算機(jī)的管理,更好地利用網(wǎng)絡(luò)資源,成為了日益突出的問(wèn)題。由于這些行為的隱蔽性和難管理性,因此</p><p>  監(jiān)控系統(tǒng)的一個(gè)簡(jiǎn)單含義就是通過(guò)某種方法對(duì)一些特定情況進(jìn)行實(shí)時(shí)跟蹤,如有異常現(xiàn)象

22、發(fā)生,則發(fā)出警報(bào)信息同時(shí)對(duì)異常進(jìn)行相應(yīng)的處理,而減輕了工作強(qiáng)度。從使用設(shè)備類(lèi)型的角度上來(lái)劃分,監(jiān)控系統(tǒng)可以分為兩類(lèi):以硬件為主的監(jiān)控系統(tǒng)和以軟件為主的監(jiān)控系統(tǒng)。前者主要是通過(guò)攝像頭和各種傳感器來(lái)完成監(jiān)控功能,例如銀行使用的閉路電視監(jiān)視系統(tǒng),就是采用攝像頭來(lái)錄制任意一個(gè)時(shí)刻營(yíng)業(yè)廳周?chē)膱?chǎng)景;后者是隨著網(wǎng)絡(luò)和計(jì)算機(jī)的發(fā)展而產(chǎn)生的新的監(jiān)控系統(tǒng),互聯(lián)網(wǎng)的普及和發(fā)展,既帶來(lái)信息共享和資源交換方便的益處,同時(shí)也不可避免地帶來(lái)了消極的因素,如網(wǎng)絡(luò)病毒

23、、惡意黑客程序等一直在威脅著計(jì)算機(jī)的安全,各種不健康的內(nèi)容充斥著互聯(lián)網(wǎng),嚴(yán)重影響了網(wǎng)絡(luò)的健康發(fā)展。為了抵御各種新的威脅,產(chǎn)生了以軟件為主的監(jiān)控系統(tǒng),這類(lèi)監(jiān)控系統(tǒng)主要以防火墻為代表,本文開(kāi)發(fā)的遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)則屬于后者。</p><p>  1.2 國(guó)內(nèi)外研究現(xiàn)狀</p><p>  遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)主要是對(duì)遠(yuǎn)程的某臺(tái)或者若干臺(tái)計(jì)算機(jī)進(jìn)行監(jiān)控,用來(lái)查看任意一段時(shí)間內(nèi)被控端計(jì)算機(jī)的

24、網(wǎng)絡(luò)情況,使用的是遠(yuǎn)程控制技術(shù)。遠(yuǎn)程控制軟件是在遠(yuǎn)方機(jī)器允許的情況下,對(duì)其進(jìn)行監(jiān)控的一類(lèi)軟件。它由客戶(hù)端(Client)和服務(wù)器端(Server)兩部分組成。Server 端是應(yīng)用于被控端計(jì)算機(jī)上的軟件,Client 端是運(yùn)行于監(jiān)控端計(jì)算機(jī)上的軟件。這與木馬技術(shù)具有很大的相似性均采用遠(yuǎn)程監(jiān)控技術(shù),只不過(guò)木馬具有隱蔽性和非授權(quán)性的特點(diǎn)。</p><p>  從遠(yuǎn)程監(jiān)控程序的發(fā)展來(lái)看,基本上可以分為兩個(gè)階段,最初產(chǎn)生

25、于以 UNIX 平臺(tái)為主要操作系統(tǒng)時(shí)期,當(dāng)時(shí)木馬程序的功能相對(duì)簡(jiǎn)單,往往是將一段程序嵌入到系統(tǒng)文件中,用跳轉(zhuǎn)指令來(lái)執(zhí)行一些木馬的功能,在這個(gè)時(shí)期木馬的設(shè)計(jì)著和使用者大都是些技術(shù)人員,必須具備相當(dāng)?shù)木W(wǎng)絡(luò)和編程知識(shí)。而后隨著 Windows 平臺(tái)的日益普及,一些基于圖形操作的木馬程序也出現(xiàn)了,用戶(hù)界面的改善,遠(yuǎn)程監(jiān)控技術(shù)采用的技術(shù)也朝著一下幾個(gè)方面發(fā)展:</p><p>  1.跨平臺(tái)性:主要是針對(duì) Windows

26、系統(tǒng)而言,如何讓監(jiān)控程序能夠在不同的Windows 平臺(tái)上運(yùn)行是一個(gè)需要解決的難點(diǎn)。因?yàn)?Windows NT/2000/XP 都具有了權(quán)限的概念,這和 Windows 95/98 是不同的。另外一般的監(jiān)控程序多少都使用了某些Windows 系統(tǒng)下特定的 APT,因此如何能夠設(shè)計(jì)出與 Windows 平臺(tái)版本無(wú)關(guān)的監(jiān)控系統(tǒng)是所有開(kāi)發(fā)商們面臨的一個(gè)難點(diǎn)。</p><p>  2.模塊化設(shè)計(jì):模塊化設(shè)計(jì)是一種潮流,現(xiàn)

27、在的遠(yuǎn)程監(jiān)控軟件同樣采用了模塊化設(shè)計(jì)的概念。</p><p>  3.更新更強(qiáng)的感染模式:傳統(tǒng)的修改 INI 文件和注冊(cè)表的手法,已經(jīng)不能適應(yīng)更加隱蔽的需要,目前很多木馬的感染方式已經(jīng)開(kāi)始改變,象病毒一樣感染W(wǎng)indows 下的文件,監(jiān)控軟件也需要解決隱蔽性的問(wèn)題,因此木馬的傳播方式仍然可以借鑒。</p><p>  4.即時(shí)通信:如果目標(biāo)使用的是動(dòng)態(tài) IP,以?huà)呙璺绞秸?IP 地址太慢,

28、現(xiàn)在的木馬已經(jīng)有了即使通知的功能,如 IRC、ICQ 通知等。</p><p>  隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展和監(jiān)控范圍的擴(kuò)大,監(jiān)控系統(tǒng)由過(guò)去的單機(jī)監(jiān)控過(guò)渡到現(xiàn)在的網(wǎng)絡(luò)監(jiān)控,但目前還存在著一些問(wèn)題。</p><p>  首先,網(wǎng)絡(luò)通信技術(shù)不足的問(wèn)題。網(wǎng)絡(luò)通信技術(shù)是遠(yuǎn)程監(jiān)控技術(shù)中最為關(guān)鍵的技術(shù),然而,目前網(wǎng)絡(luò)通信一般簡(jiǎn)單采用 Socket 技術(shù),甚至 FTP 或 E-Mail 等,這些技術(shù)無(wú)論在

29、傳輸?shù)臄?shù)據(jù)量、編程的靈活性還是安全性方面都有很大的欠缺,特別是對(duì)于現(xiàn)場(chǎng)多個(gè)端點(diǎn)的數(shù)據(jù)采集,會(huì)大大增加編程的復(fù)雜度,不能滿(mǎn)足遠(yuǎn)程監(jiān)控技術(shù)對(duì)網(wǎng)絡(luò)通信的需求。</p><p>  其次,網(wǎng)絡(luò)通信中多種結(jié)構(gòu)并存的問(wèn)題。目前的遠(yuǎn)程監(jiān)控系統(tǒng)結(jié)構(gòu)大多比較復(fù)雜,分布距離遠(yuǎn),而且還存在著不同局域網(wǎng),不同平臺(tái),甚至在同一局域網(wǎng)中的操作平臺(tái)以及編程語(yǔ)言也可能有不同的問(wèn)題,這就要求集成網(wǎng)絡(luò)中的不同平臺(tái),實(shí)現(xiàn)相互之間的通信,而這些問(wèn)題采用

30、傳統(tǒng)方法是難以解決的。</p><p>  遠(yuǎn)程監(jiān)控是國(guó)內(nèi)外研究的前沿課題,國(guó)內(nèi)外都展開(kāi)了積極的研究。1997 年 1 月,首屆基于 Internet 的遠(yuǎn)程監(jiān)控診斷工作會(huì)議由斯坦福大學(xué)和麻省理工學(xué)院聯(lián)合主辦,有來(lái)自 30多個(gè)公司和研究機(jī)構(gòu)的 50 多位代表到會(huì)。會(huì)議主要討論了有關(guān)遠(yuǎn)程監(jiān)控系統(tǒng)開(kāi)放式體系、診斷信息規(guī)程、傳輸協(xié)議及對(duì)用戶(hù)的合法限制等,并對(duì)未來(lái)技術(shù)發(fā)展作了展望。</p><p>

31、;  1.3 本文的主要工作</p><p>  本課題采用了計(jì)算機(jī)網(wǎng)絡(luò)通信、多線(xiàn)程、木馬等多個(gè)領(lǐng)域技術(shù)同時(shí)整合在管理系統(tǒng)中使整個(gè)系統(tǒng)具有良好的人機(jī)交互性、實(shí)時(shí)性、安全性、和可擴(kuò)性。本課題要完成的主要任務(wù)是基于 C/S 模式的遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)設(shè)計(jì)開(kāi)發(fā),從系統(tǒng)功能要求到具體模塊設(shè)計(jì)和實(shí)現(xiàn),重點(diǎn)完成客戶(hù)端和服務(wù)器端中各模塊的設(shè)計(jì),并保證整個(gè)系統(tǒng)的易用性、實(shí)時(shí)性、安全性;并充分考慮后續(xù)階段的開(kāi)發(fā)。</p&g

32、t;<p>  第二章 系統(tǒng)使用基本概念</p><p><b>  2.1 RMON</b></p><p>  遠(yuǎn)程監(jiān)控(RMON)是一個(gè)標(biāo)準(zhǔn)監(jiān)控規(guī)范,它可以使各種網(wǎng)絡(luò)監(jiān)控器和控制臺(tái)系統(tǒng)之間交換網(wǎng)絡(luò)監(jiān)控?cái)?shù)據(jù)。RMON為網(wǎng)絡(luò)管理員選擇符合特殊網(wǎng)絡(luò)需求的控制臺(tái)和網(wǎng)絡(luò)監(jiān)控探測(cè)器提供了更多的自由。RMON首先實(shí)現(xiàn)了對(duì)異構(gòu)環(huán)境進(jìn)行一致的遠(yuǎn)程管理,它為通過(guò)端口遠(yuǎn)

33、程監(jiān)視網(wǎng)段提供了解決方案。主要實(shí)現(xiàn)對(duì)一個(gè)網(wǎng)段乃至整個(gè)網(wǎng)絡(luò)的數(shù)據(jù)流量的監(jiān)視功能,目前已成為成功的網(wǎng)絡(luò)管理標(biāo)準(zhǔn)之一。 </p><p>  遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)選擇采用RMON標(biāo)準(zhǔn)主要是為了更有效的管理計(jì)算機(jī),通過(guò)積極主動(dòng)地監(jiān)測(cè)遠(yuǎn)程計(jì)算機(jī)的網(wǎng)絡(luò)狀況,做到快速發(fā)現(xiàn)網(wǎng)絡(luò)狀況異常,及時(shí)糾正網(wǎng)絡(luò)故障,防止病毒木馬等影響。RMON MIB的實(shí)現(xiàn)可以記錄某些網(wǎng)絡(luò)事件,可以記錄網(wǎng)絡(luò)性能數(shù)據(jù)和故障歷史,可以在任何時(shí)候訪(fǎng)問(wèn)故障歷史數(shù)

34、據(jù)以有利于進(jìn)行有效地故障診斷。由于采用主動(dòng)探測(cè)可以減少了本地計(jì)算機(jī)與遠(yuǎn)程計(jì)算機(jī)之間的數(shù)據(jù)流量,使簡(jiǎn)單而有力地管理大型網(wǎng)絡(luò)成為可能。 </p><p>  下圖給出計(jì)算機(jī)遠(yuǎn)程通信。</p><p>  圖2-1 計(jì)算機(jī)遠(yuǎn)程通信</p><p>  2.2 C/S軟件開(kāi)發(fā)模式</p><p>  隨著Internet網(wǎng)絡(luò)應(yīng)用技術(shù)的發(fā)展,基于客戶(hù)/

35、服務(wù)器的系統(tǒng)設(shè)計(jì)已經(jīng)被廣泛的應(yīng)用于各類(lèi)的系統(tǒng)的軟件設(shè)計(jì)和開(kāi)發(fā)中,其基本思想是把應(yīng)用分布在客戶(hù)機(jī)和服務(wù)器上,他主要是用于主從計(jì)算機(jī)的應(yīng)用程序,其中的每一臺(tái)計(jì)算機(jī)負(fù)責(zé)維護(hù)一項(xiàng)特別功能,這種變成方式改變了我們傳統(tǒng)的單機(jī)應(yīng)用程序和系統(tǒng)實(shí)現(xiàn)方式。簡(jiǎn)單的說(shuō),這種模型的工作方式就是Client端向Server端提出訪(fǎng)問(wèn)請(qǐng)求,或者提交一個(gè)任務(wù),Server端在接受該任務(wù)后,經(jīng)過(guò)一些處理,將處理結(jié)果返回給Client端。</p><p

36、>  客戶(hù)機(jī)/服務(wù)器結(jié)構(gòu)在最初階段是以終端/主機(jī)結(jié)構(gòu)的形式出現(xiàn)的。這種體系結(jié)構(gòu)使得用戶(hù)可以盡可能地使用共享資源。這里的共享資源包括了數(shù)據(jù)和程序的共享。終端的任務(wù)只是簡(jiǎn)單的輸入命令,顯示結(jié)果,而相關(guān)的工作一切都交給了主機(jī)去完成,在這樣的機(jī)構(gòu)中,由于終端完成的工作很簡(jiǎn)單,必須隨著信息業(yè)的發(fā)展經(jīng)常更新但是主機(jī)負(fù)責(zé)了所有數(shù)據(jù)的處理任務(wù),隨著信息量的增加,它在功能和性能上也必須跟隨發(fā)展。</p><p>  終端/主

37、機(jī)的結(jié)構(gòu)特別是資源得到充分的共享,但用戶(hù)界面不友好,主機(jī)負(fù)荷過(guò)大,因此客戶(hù)機(jī)/服務(wù)器模式就產(chǎn)生了。從客戶(hù)/服務(wù)器應(yīng)以上來(lái)說(shuō),它代表一個(gè)具有定義好的特定功能平臺(tái);也就是說(shuō),一個(gè)平臺(tái)指的就是一臺(tái)計(jì)算機(jī)所使用的軟件和硬件的組合,在一個(gè)兩層系統(tǒng)中。</p><p>  計(jì)算機(jī)圖形化的快速發(fā)展,網(wǎng)絡(luò)技術(shù)日益成熟,在各種遠(yuǎn)程管理軟件中,C/S(Client/Server,客戶(hù)機(jī)/服務(wù)器)結(jié)構(gòu)應(yīng)日出成熟。C/S結(jié)構(gòu)在最初階段是

38、以終端/主機(jī)結(jié)構(gòu)新式出現(xiàn)的,這種體系結(jié)構(gòu)的能夠盡可能地使用共享該主機(jī)的資源,而終端只是負(fù)責(zé)提交數(shù)據(jù)和顯示數(shù)據(jù)而中間的處理數(shù)據(jù)由主機(jī)完成。但是隨著信息量處理的增加,導(dǎo)致主機(jī)負(fù)荷過(guò)大,在這種情況下C/S模式由于客戶(hù)端和服務(wù)器端都有一套完整的應(yīng)用程序都具備了數(shù)據(jù)處理的能力。</p><p>  圖2-2 C/S通信模型</p><p>  客戶(hù)機(jī)/服務(wù)器結(jié)構(gòu)通?;譃樗膶?,從客戶(hù)機(jī)到服務(wù)器分別為

39、:</p><p>  1.?dāng)?shù)據(jù)捕獲層:人機(jī)交互的捕獲和轉(zhuǎn)換,包括鍵盤(pán),鼠標(biāo),虛擬現(xiàn)實(shí)接口設(shè)備和未來(lái)的語(yǔ)音,手勢(shì)和神經(jīng)傳導(dǎo),以及輸出設(shè)備如顯示器,打印機(jī),磁帶機(jī)等。該層的編程操做是將數(shù)據(jù)以預(yù)定的格式展現(xiàn)出來(lái)。</p><p>  2.業(yè)務(wù)規(guī)則層:該層負(fù)責(zé)將數(shù)據(jù)轉(zhuǎn)換為業(yè)務(wù)關(guān)聯(lián)數(shù)據(jù)。增加有關(guān)業(yè)務(wù)規(guī)則的信息。業(yè)務(wù)規(guī)則層不處理數(shù)據(jù),僅僅是涉及規(guī)則。</p><p>  3.

40、應(yīng)用接口層:該層負(fù)責(zé)將業(yè)務(wù)關(guān)聯(lián)數(shù)據(jù)轉(zhuǎn)換為技術(shù)關(guān)聯(lián)數(shù)據(jù)。如SQL語(yǔ)句,以供應(yīng)用服務(wù)器層使用。</p><p>  4.應(yīng)用服務(wù)器層:該層負(fù)責(zé)處理數(shù)據(jù),如存儲(chǔ)數(shù)據(jù)和計(jì)算出結(jié)果。</p><p>  這種體系結(jié)構(gòu)最初的出現(xiàn)時(shí)為了緩解終端/主機(jī)結(jié)構(gòu)中主機(jī)的繁重工作負(fù)擔(dān),通過(guò)在客戶(hù)和服務(wù)器之間劃分各自所包含的層次,則可以提高應(yīng)用的計(jì)算效率。于是將主機(jī)要做的一部分工作轉(zhuǎn)移到了客戶(hù)機(jī)上,顯然這也就增加了

41、對(duì)客戶(hù)機(jī)的要求,但隨著PC業(yè)的發(fā)展,這一點(diǎn)已經(jīng)不成為什么問(wèn)題了。</p><p>  在兩層結(jié)構(gòu)的體系里,業(yè)務(wù)規(guī)則可能混雜在客戶(hù)端的用戶(hù)界面控制流中,也可能潛入在服務(wù)器端的數(shù)據(jù)庫(kù)中,更常見(jiàn)的是客戶(hù)端和服務(wù)器端各實(shí)現(xiàn)一部分業(yè)務(wù)邏輯,通過(guò)網(wǎng)絡(luò),客戶(hù)端把SQL語(yǔ)句,文件系統(tǒng)的調(diào)用以及其他請(qǐng)求送到服務(wù)器中,服務(wù)器對(duì)請(qǐng)求進(jìn)行處理,然后把原始結(jié)果回送到客戶(hù)端。</p><p>  兩層結(jié)構(gòu)的最大特點(diǎn)在

42、于:具有成熟的設(shè)計(jì)開(kāi)發(fā)方法和工具。經(jīng)過(guò)多年的積累,基于Client/Server模式的系統(tǒng)設(shè)計(jì)開(kāi)發(fā)方法已經(jīng)被用戶(hù)所熟悉和掌握。并且,眾多的數(shù)據(jù)庫(kù)和軟件生產(chǎn)商提供了各種可視化工具和編程語(yǔ)言來(lái)實(shí)現(xiàn)支持開(kāi)發(fā)。交互性強(qiáng),界面友好;各個(gè)Client上運(yùn)行的應(yīng)用程序是針對(duì)特定的用戶(hù)和任務(wù)設(shè)計(jì)的,同時(shí)具有在線(xiàn)幫助和提示出錯(cuò)等等的功能。</p><p>  1.?dāng)?shù)據(jù)通信量小,安全性高。</p><p> 

43、 2.兩層結(jié)構(gòu)對(duì)于規(guī)模相對(duì)來(lái)說(shuō)較小,專(zhuān)用型的系統(tǒng)應(yīng)用程序來(lái)說(shuō)非常合適。</p><p>  2.3 網(wǎng)絡(luò)通信技術(shù)</p><p>  2.3.1 socket簡(jiǎn)介</p><p>  80年代初,美國(guó)政府的高級(jí)研究工程機(jī)構(gòu)(ARPA)給加利福尼亞大學(xué)Berkeley分校提供了資金,讓他們?cè)赨NIX操作系統(tǒng)下實(shí)現(xiàn)TCP/IP協(xié)議。在這個(gè)項(xiàng)目中,研究人員為T(mén)CP/IP網(wǎng)

44、絡(luò)通信開(kāi)發(fā)了一個(gè)API(應(yīng)用程序接口)。這個(gè)API稱(chēng)為Socket接口(套接字)。今天,SOCKET接口是TCP/IP網(wǎng)絡(luò)最為通用的API,也是在INTERNET上進(jìn)行應(yīng)用開(kāi)發(fā)最為通用的API。90年代初,由Microsoft聯(lián)合了其他幾家公司共同制定了一套WINDOWS下的網(wǎng)絡(luò)編程接口,即Windows Sockets規(guī)范。它是Berkeley Sockets的重要擴(kuò)充,主要是增加了一些異步函數(shù),并增加了符合Windows消息驅(qū)動(dòng)特性

45、的網(wǎng)絡(luò)事件異步選擇機(jī)制。WINDOWS SOCKETS規(guī)范是一套開(kāi)放的、支持多種協(xié)議的Windows下的網(wǎng)絡(luò)編程接口。從1991年的1.0版到1995年的2.0.8版,經(jīng)過(guò)不斷完善并在Intel、Microsoft、Sun、SGI、Informix、Novell等公司的全力支持下,已成為Windows網(wǎng)絡(luò)編程的事實(shí)上的標(biāo)準(zhǔn)。目前,在實(shí)際應(yīng)用中的WINDOWS SOKCETS</p><p>  Socket作為支

46、持TCP/IP協(xié)議的網(wǎng)絡(luò)通信的基本操作單元.它提供了不同主機(jī)間進(jìn)程通信的斷點(diǎn),這些進(jìn)程在通信前各自建立一個(gè)Socket,通過(guò)調(diào)用Socket的API實(shí)現(xiàn)網(wǎng)絡(luò)通信,而Socket利用下層的網(wǎng)絡(luò)通信協(xié)議和操作系統(tǒng)的調(diào)用完成網(wǎng)絡(luò)通信。如圖2-3所示,這樣就屏蔽了網(wǎng)絡(luò)底層的結(jié)構(gòu)和協(xié)議,應(yīng)用程序在網(wǎng)絡(luò)上傳輸,接收數(shù)據(jù)都通過(guò)Socket接口來(lái)實(shí)現(xiàn),在應(yīng)用開(kāi)發(fā)中就像使用句柄一樣,可以對(duì)Socket句柄進(jìn)行讀,寫(xiě)操作。</p><p

47、><b>  圖2-3網(wǎng)絡(luò)通信</b></p><p>  2.3.2 socket套接字編程原理</p><p>  套接字有三種類(lèi)型:流式套接字(Stream Socket)、數(shù)據(jù)報(bào)套接字(Datagram Socket)及原始套接字(Raw Socket)。</p><p>  流式套接字式是最常用的套接字是TCP/IP協(xié)議中TCP

48、協(xié)議使用的接口。它提供可靠的面向連接服務(wù)。實(shí)現(xiàn)了無(wú)差錯(cuò)無(wú)重復(fù)的順序數(shù)據(jù)傳輸。數(shù)據(jù)報(bào)套接字是TCP/IP協(xié)議中UDP協(xié)議的使用接口。它定義一種無(wú)連接的服務(wù),數(shù)據(jù)通過(guò)相互獨(dú)立的報(bào)文進(jìn)行傳輸,是無(wú)序的,并且不保證可靠,無(wú)差錯(cuò)。原始套接字允許對(duì)網(wǎng)絡(luò)底層協(xié)議(如IP和ICMP)直接訪(fǎng)問(wèn),主要用于新的網(wǎng)絡(luò)協(xié)議的測(cè)試等,不提供給普通用戶(hù)使用。</p><p>  一般情況下,我們使用流式套接字和數(shù)據(jù)報(bào)套接字來(lái)開(kāi)發(fā)網(wǎng)絡(luò)通信程序,

49、流式套接字提供高可靠的阿服務(wù),數(shù)據(jù)報(bào)提供高效率的服務(wù),高可靠的通信用于傳輸需要交換大量報(bào)文的場(chǎng)合如文件傳輸、遠(yuǎn)程登陸等;高效率的通信用于一次傳輸交換少量的報(bào)文如數(shù)據(jù)庫(kù)查詢(xún)等,其可靠性由應(yīng)用程序保證,應(yīng)為需要交換的信息較少,即使發(fā)生錯(cuò)誤傳輸需要重傳也不會(huì)付出太大的代價(jià)。</p><p>  無(wú)連接服務(wù)器一般是面向事務(wù)處理的,一個(gè)請(qǐng)求一個(gè)應(yīng)答就完成了客戶(hù)程序和服務(wù)程序之間的相互作用。若使用無(wú)連接的套接字編程,程序流程

50、如圖2-4所示:</p><p>  圖2-4無(wú)連接的套接字的系統(tǒng)調(diào)用時(shí)序圖</p><p>  面向連接服務(wù)器處理的請(qǐng)求比較復(fù)雜,不是一來(lái)一去的簡(jiǎn)單的請(qǐng)求應(yīng)答所能解決的,所以往往是并發(fā)服務(wù),使用面向連接的套接字編程。</p><p>  圖2-5面向連接的套接字的系統(tǒng)調(diào)用時(shí)序圖</p><p>  2.3.3 通信方式選擇 </p

51、><p>  在進(jìn)行網(wǎng)絡(luò)開(kāi)發(fā),首先必須選擇阻塞方式還是非阻塞方式進(jìn)行通信。處于阻塞模式的函數(shù)轉(zhuǎn)調(diào)操作完成后才返回。由于調(diào)用這些函數(shù)的套接字直到返回前不能做任何事,因此被稱(chēng)為阻塞函數(shù)。而當(dāng)套接字處于非阻塞模式時(shí),API函數(shù)的調(diào)用立刻返回,大多數(shù)情況下這些調(diào)用都會(huì)“失敗”,并且返回一個(gè)“WSAEAEWOULDBLOCK”錯(cuò)誤,這意味請(qǐng)求的操作在調(diào)用期間沒(méi)有時(shí)間完成。</p><p>  在網(wǎng)絡(luò)通訊

52、中,由于網(wǎng)絡(luò)擁擠或一次發(fā)送的數(shù)據(jù)量過(guò)大等原因,經(jīng)常會(huì)發(fā)生數(shù)據(jù)交換的數(shù)據(jù)在短時(shí)間內(nèi)不能傳送完,收發(fā)數(shù)據(jù)的函數(shù)因此不能返回,這就造成了阻塞。利用調(diào)用函數(shù)recv()時(shí),如果數(shù)據(jù)還未到達(dá),系統(tǒng)則在此掛起,直到數(shù)據(jù)到達(dá)或接收到高級(jí)的中斷信號(hào)為止。WinSock對(duì)有可能阻塞的函數(shù)提供了兩種處理方式:同步和異步方式。在同步方式下,收發(fā)數(shù)據(jù)的函數(shù)在被調(diào)用后一直要到傳送完畢或者出錯(cuò)才能返回。對(duì)于異步方式,函數(shù)被調(diào)用后立即返回,當(dāng)傳送完成后WinSock

53、給程序發(fā)送一個(gè)實(shí)現(xiàn)約定好的消息。</p><p>  Berkeley Socket一般采用阻塞的工作方式,這種方式比較適合UNIX操作系統(tǒng)。而Windows下不再適用了。因?yàn)橐坏┌l(fā)生阻塞,CPU的控制權(quán)會(huì)一直被占用,容易發(fā)生死機(jī)。因此,Windows Socket在Berkeley Socket基礎(chǔ)上進(jìn)行了擴(kuò)充,提供了一些異步函數(shù),增加了符合Window:消息驅(qū)動(dòng)特性的網(wǎng)絡(luò)事件異步選擇機(jī)制,以開(kāi)發(fā)符合Windo

54、ws特性的高效率的網(wǎng)絡(luò)程序。</p><p>  在Windows環(huán)境下開(kāi)發(fā)網(wǎng)絡(luò)通信盡量要采用非阻塞方式操作,因?yàn)榉亲枞绞皆诜菗屜萕indows操作系統(tǒng)下能夠更好得工作。Windows Socket通過(guò)異步選擇函數(shù)WSAAsyncSelectQ來(lái)實(shí)現(xiàn)非阻塞通信,它提供了對(duì)網(wǎng)絡(luò)事件基于消息的異步存取,可用該函數(shù)注冊(cè)應(yīng)用程序感興趣的網(wǎng)絡(luò)事件,如有數(shù)據(jù)到達(dá)、可以發(fā)送數(shù)據(jù)或有程序請(qǐng)求連接等網(wǎng)絡(luò)事件發(fā)生時(shí),會(huì)調(diào)用 WIN

55、SOCK.DLL向窗口應(yīng)用程序發(fā)送特定的消息,程序就可以根據(jù)消息作相應(yīng)處理。</p><p>  2.3.4 套接字工作流程</p><p><b>  1.創(chuàng)建套接字</b></p><p>  程序在通信前,首先必須擁有一個(gè)套接字,系統(tǒng)調(diào)用socket()向應(yīng)用</p><p>  程序提供創(chuàng)建套接字的手段,其調(diào)用格

56、式如下:</p><p>  Dim clientSocket as New Socket(AddressFamily.InterNetwork,SocketType.Stream, _ProtocolType.Tcp)</p><p>  socket的創(chuàng)建需要三個(gè)參數(shù):AddressFamily枚舉指定Socket類(lèi)用來(lái)解析網(wǎng)絡(luò)地址的標(biāo)準(zhǔn)地址族,AddressFamily.InterN

57、etwork是成員指定使用IP 版本4地址族。SocketType枚舉指定套接字的類(lèi)型,SocketType.Stream 成員表示一個(gè)用于發(fā)送和接收數(shù)據(jù)并且支持流控制的標(biāo)準(zhǔn)套接字。ProtocolType 枚舉指定在Socket上通信時(shí)使用的網(wǎng)絡(luò)協(xié)議ProtocolType.Tcp指示套接字使用TCP;ProtocolType.Udp指示套接字使用UDP。</p><p>  2.配置socket</p&

58、gt;<p>  當(dāng)一個(gè)套接字用socket()創(chuàng)建后,需要使用制定本地的終結(jié)點(diǎn)。bind()將套接字地址(包括本地主機(jī)地址和本地端口地址)與所創(chuàng)建的套接字號(hào)關(guān)系起來(lái),即將名字賦予套接字,以指定與本地相關(guān)。調(diào)用Bind之前,必須首先創(chuàng)建打算從其進(jìn)行數(shù)據(jù)通信的本地IPEndPoint。如果對(duì)制定的套接字地址沒(méi)有要求,則可以用IPAddress.Any作為地址參數(shù)創(chuàng)建一個(gè)IPEndPoint,這樣,基礎(chǔ)服務(wù)提供程序?qū)?huì)分配最適

59、合的網(wǎng)絡(luò)地址。如果本地存在多個(gè)網(wǎng)絡(luò)接口,這將有助于簡(jiǎn)化應(yīng)用程序。同樣對(duì)于端口不需特定的話(huà),則可以創(chuàng)建一個(gè)使用0作為端口號(hào)的 IPEndPoint。在這種情況下,服務(wù)提供程序?qū)?huì)分配一個(gè)可用的端口號(hào)。</p><p><b>  其調(diào)用方法如下:</b></p><p>  Dim localEndPoint As New IPEndPoint(Address.ToSt

60、ring 12345) clinetSocket.Bind(localEndPoint)</p><p>  采用面向連接的服務(wù)器需要使用listen()來(lái)監(jiān)聽(tīng)端口同時(shí)指出接受請(qǐng)求的隊(duì)列長(zhǎng)度,其調(diào)用方法如下:</p><p>  listener.Listen(1) '由于該系統(tǒng)使用P2P控制所以設(shè)定隊(duì)列長(zhǎng)度為1</p><p>  Dim handler

61、 As Socket = listener.Accept() '同意接入請(qǐng)求</p><p>  3.建立套接字連接connect()和accept()</p><p>  這兩個(gè)函數(shù)調(diào)用用于完成一個(gè)完整相關(guān)的連接,其中connect()用于建立連接。無(wú)連接的套接字進(jìn)程也可以調(diào)用connect(),但這時(shí)在進(jìn)程之間沒(méi)有實(shí)際的報(bào)文交換,調(diào)用將從本地操作系統(tǒng)直接返回。這樣做的優(yōu)點(diǎn)是不必

62、為每一數(shù)據(jù)指定目的地址,而且如果收到的一個(gè)數(shù)據(jù)報(bào),其目的端口未與任何套接字建立“連接”,便能判斷該端口不可操作。而accept()用于使服務(wù)器等待來(lái)自某客戶(hù)進(jìn)程的實(shí)際連接。connect()的調(diào)用方法如下:</p><p>  Public Sub Connect( ByVal remoteEP As EndPoint)</p><p>  accept()用于面向連接服務(wù)器。參數(shù)addr

63、和addrlen存放客戶(hù)方的地址信息。調(diào)用前,參數(shù)addr指向一個(gè)初始值為空的地址結(jié)構(gòu),而addrlen的初始值為0;調(diào)用accept()后,服務(wù)器等待從編號(hào)為s的套接字上接受客戶(hù)連接請(qǐng)求,而連接請(qǐng)求是由客戶(hù)方的connect()調(diào)用發(fā)出的。當(dāng)有連接請(qǐng)求到達(dá)時(shí),accept)調(diào)用將請(qǐng)求連接隊(duì)列上的第一個(gè)客戶(hù)方套接字地址及長(zhǎng)度放入addr和addrlen,并創(chuàng)建一個(gè)與S有相同特性的新套接字號(hào)。新的套接字可用于處理服務(wù)器并發(fā)請(qǐng)求。accep

64、t()調(diào)用方法如下:</p><p>  Public Function Accept() As Socket</p><p>  4.?dāng)?shù)據(jù)傳輸send()和receive()</p><p>  當(dāng)socket建立完成后,調(diào)用這兩個(gè)函數(shù)用來(lái)傳輸數(shù)據(jù)。send()調(diào)用用于在參數(shù)s指定的己連接的數(shù)據(jù)報(bào)或流套接字上發(fā)送輸出數(shù)據(jù),其格式如下:</p><

65、;p>  Overloads Public Function Send( ByVal buffer() As Byte ) As Integer</p><p>  receive()調(diào)用用于在參數(shù)S指定的已連接的數(shù)據(jù)報(bào)或流套接字上接收輸入數(shù)據(jù),格式如下:</p><p>  Overloads Public Function Receive( ByVal buffer() As B

66、yte ) As Integer</p><p>  5.socket關(guān)閉</p><p>  Close 方法可關(guān)閉遠(yuǎn)程主機(jī)連接,并釋放所有與 Socket 關(guān)聯(lián)的托管資源和非托管資源。調(diào)用方法如下:</p><p>  Public Sub Close()</p><p><b>  2.4 多線(xiàn)程技術(shù)</b><

67、;/p><p>  線(xiàn)程是進(jìn)程的一條執(zhí)行路徑,他包含獨(dú)立的堆棧和CPU寄存器狀態(tài),每個(gè)線(xiàn)程共享所有的進(jìn)程資源,一個(gè)進(jìn)程內(nèi)的所有線(xiàn)程使用同一個(gè)地址空間,而這些線(xiàn)程的執(zhí)行由系統(tǒng)調(diào)度程序控制,調(diào)度程序決定哪個(gè)線(xiàn)程可執(zhí)行以及什么時(shí)候執(zhí)行線(xiàn)程。線(xiàn)程有優(yōu)先級(jí)別,優(yōu)先權(quán)較低的線(xiàn)程必須等到優(yōu)先權(quán)較高的線(xiàn)程執(zhí)行完后再執(zhí)行。在多處理器的機(jī)器上,調(diào)度程序可將多個(gè)線(xiàn)程放到不同的處理器上運(yùn)行,以提高系統(tǒng)的運(yùn)行效率。</p>&l

68、t;p>  線(xiàn)程是進(jìn)程內(nèi)部的一個(gè)可執(zhí)行路徑,它是CPU調(diào)度的單位,是進(jìn)程的一個(gè)執(zhí)行單元。所謂的多線(xiàn)程就是一個(gè)進(jìn)程內(nèi)可以有一個(gè)或多個(gè)可獨(dú)立執(zhí)行的單元,每個(gè)單元就是一個(gè)線(xiàn)程。</p><p>  一個(gè)應(yīng)用程序可以創(chuàng)建多個(gè)線(xiàn)程,多個(gè)不同的執(zhí)行流,并同時(shí)運(yùn)行這些線(xiàn)程。線(xiàn)程機(jī)制使系統(tǒng)具有了多任務(wù)功能,這樣用戶(hù)就可以同時(shí)運(yùn)行多個(gè)運(yùn)用程序,且在每一個(gè)應(yīng)用程序中又可以同時(shí)運(yùn)行多個(gè)線(xiàn)程。這樣多個(gè)線(xiàn)程并發(fā)地在同一進(jìn)程中。一個(gè)進(jìn)

69、程至少擁有一個(gè)線(xiàn)程,即主線(xiàn)程。主線(xiàn)程終止,進(jìn)程亦終止。主線(xiàn)程以函數(shù)地址形式(通常為Main或winmain函數(shù)的地址)被啟動(dòng)代碼提供給操作系統(tǒng)。另外,可以根據(jù)需要?jiǎng)?chuàng)建其它線(xiàn)程,每個(gè)線(xiàn)程都共享創(chuàng)建它們進(jìn)程的內(nèi)存空間,全部變量和系統(tǒng)資源。</p><p>  在.NET Framework 中用來(lái)創(chuàng)建和維護(hù)線(xiàn)程的基類(lèi)是System.Threading .Thread類(lèi)。它能夠創(chuàng)建并控制線(xiàn)程,設(shè)置其優(yōu)先級(jí)并獲取其狀態(tài);

70、擁有Start, Stop, Resume, Abort, Suspend和Join(waitfor)等方法操縱線(xiàn)程;還可以通過(guò)如Sleep, IsAlive, IsBackground,Priority, A part-mentState和ThreadState等方法查詢(xún)和設(shè)置線(xiàn)程狀態(tài)。</p><p><b>  1.創(chuàng)建線(xiàn)程</b></p><p>  創(chuàng)

71、建線(xiàn)程非常容易,最簡(jiǎn)單直接的方法是創(chuàng)建一個(gè)新的Thread對(duì)象,然后傳遞給它的一個(gè)委托,也就是指向某類(lèi)方法的一個(gè)引用就啟動(dòng)了這個(gè)線(xiàn)程。代碼如下:</p><p>  Dim t As New Thread(AddressOf ThreadProc)</p><p><b>  t.Start()</b></p><p><b>  2

72、.掛起線(xiàn)程</b></p><p>  t.Suspend()</p><p>  2.5 開(kāi)發(fā)平臺(tái)-------Visual Basic 2005</p><p>  Microsoft Visual Basic 2005 從 Visual Basic 語(yǔ)言演變而來(lái),是一種為高效地生成類(lèi)型安全和面向?qū)ο蟮膽?yīng)用程序而設(shè)計(jì)的語(yǔ)言。與所有面向 Microso

73、ft .NET Framework 的語(yǔ)言一樣,使用 Visual Basic 編寫(xiě)的程序都具有安全性和語(yǔ)言互操作性方面的優(yōu)點(diǎn)。它延續(xù)了基于 .NET Framework 的應(yīng)用程序的傳統(tǒng)。并恢復(fù)了對(duì)“編輯并繼續(xù)”的支持,并具有可快速開(kāi)發(fā)應(yīng)用程序的新功能。其中一種稱(chēng)為 My 的功能提供了對(duì)以下內(nèi)容的快速訪(fǎng)問(wèn):由 .NET Framework 提供的常見(jiàn)任務(wù),與應(yīng)用程序及其運(yùn)行時(shí)環(huán)境相關(guān)的信息和默認(rèn)對(duì)象實(shí)例。新的語(yǔ)言功能包括循環(huán)繼續(xù)、有保

74、證的資源處置、運(yùn)算符重載、泛型類(lèi)型和自定義事件。Visual Basic 與 .NET Framework 和公共語(yǔ)言運(yùn)行庫(kù) (CLR) 完全集成,它們提供了語(yǔ)言互操作、垃圾回收、增強(qiáng)的安全性和版本管理支持。</p><p>  第三章 面向?qū)ο蟪绦蛟O(shè)計(jì)方法</p><p>  3.1 面向?qū)ο笏枷?lt;/p><p>  面向?qū)ο?Object-Oriented)技術(shù)

75、是目前流行的軟件設(shè)計(jì)開(kāi)發(fā)技術(shù),包括面向?qū)ο蠓治龊兔嫦驅(qū)ο笤O(shè)計(jì)兩個(gè)方面的內(nèi)容。面向?qū)ο蠹夹g(shù)以其獨(dú)特的抽象性、封裝性、繼承性和多態(tài)性為軟件開(kāi)發(fā)帶來(lái)了一場(chǎng)變革,與以前的結(jié)構(gòu)化技術(shù)相比,它具有高效率的軟件開(kāi)發(fā),高可靠的軟件運(yùn)行,方便的調(diào)試、維護(hù)和擴(kuò)充等優(yōu)點(diǎn)。</p><p>  面向?qū)ο蟪绦蛟O(shè)計(jì)的特征可以概括為以下幾個(gè)方面:</p><p>  第一,抽象性。抽象是人們認(rèn)識(shí)客觀世界的復(fù)雜性的一種基

76、本方法。抽象是事物或現(xiàn)象的簡(jiǎn)單描述,突出事物或現(xiàn)象之間的共性,而暫時(shí)不考慮它們之間的差別。抽象分為兩個(gè)方面:一是過(guò)程抽象,二是數(shù)據(jù)抽象。抽象性按照人類(lèi)的通常思維來(lái)描述問(wèn)題,可以把大問(wèn)題分解成小問(wèn)題,小問(wèn)題又可以分解成更小的問(wèn)題來(lái)解決。每個(gè)小問(wèn)題都可以是一個(gè)獨(dú)立的模塊,這種思維的方式非常有利于復(fù)雜問(wèn)題的解決。</p><p>  第二,封裝性。對(duì)象是屬性數(shù)據(jù)和對(duì)屬性數(shù)據(jù)進(jìn)行操作的集合體。而“封裝”把這些數(shù)據(jù)和操作屏

77、蔽起來(lái),使用戶(hù)不必知道對(duì)象行為的實(shí)現(xiàn)細(xì)節(jié),只需要根據(jù)對(duì)象提供的外部特性接口訪(fǎng)問(wèn)對(duì)象即可。封裝性保證了模塊具有較好的獨(dú)立性,對(duì)應(yīng)用軟件的修改僅限于“類(lèi)”的內(nèi)部,使得軟件的維護(hù)修改較為容易,并且將這些改動(dòng)所帶來(lái)的影響減少到最低限度,大大提高了軟件開(kāi)發(fā)的效率和軟件的可靠性。</p><p>  第三,繼承性。繼承性是一種表示對(duì)象之間相似性的機(jī)制,它使得某類(lèi)對(duì)象可以有另一類(lèi)對(duì)象的特征和行為。不需要對(duì)原有的“類(lèi)”進(jìn)行任何修

78、改,或是只需要添加一些新的成員,便可以得到新的類(lèi)。這樣,可以把已有的模塊作為軟件的可重用資源,大大提高了軟件的開(kāi)發(fā)效率。</p><p>  第四,多態(tài)性。不同對(duì)象接收到相同的消息時(shí),會(huì)產(chǎn)生不同的動(dòng)作。所以,當(dāng)實(shí)際情況發(fā)生變化時(shí),比如一個(gè)對(duì)象接收一個(gè)消息后的動(dòng)作要發(fā)生變化時(shí),我們只需要改變這個(gè)動(dòng)作實(shí)現(xiàn)即可,其它各個(gè)地方都不需要做出任何的改變。因而這種軟件具有良好的穩(wěn)定性,以不變應(yīng)萬(wàn)變的靈活性,可以大大減少維護(hù)的費(fèi)

79、用。</p><p>  Visual Basic 2005作為一種面向?qū)ο蟮某绦蜷_(kāi)發(fā)工具。它的三大支柱技術(shù):封裝性、繼承性和多態(tài)性,充分體現(xiàn)了面向?qū)ο笏枷氲木?。整個(gè)系統(tǒng)的開(kāi)發(fā),就是建立在這三大支柱技術(shù)的基礎(chǔ)之上。</p><p>  3.2 面向?qū)ο箝_(kāi)發(fā)在系統(tǒng)中的應(yīng)用</p><p>  由于面向?qū)ο蟮能浖_(kāi)發(fā)技術(shù)具有優(yōu)越的性能,很快在科研的各個(gè)領(lǐng)域中得到廣泛的

80、應(yīng)用,計(jì)算機(jī)監(jiān)控系統(tǒng)也不例外。目前,面向?qū)ο蟮能浖O(shè)計(jì)方法己經(jīng)滲透到計(jì)算機(jī)監(jiān)控系統(tǒng)軟件開(kāi)發(fā)的許多方面,給開(kāi)發(fā)計(jì)算機(jī)監(jiān)控軟件帶來(lái)了巨大的方便。</p><p>  運(yùn)用面向?qū)ο蟮能浖_(kāi)發(fā)技術(shù)可以較為容易地分析計(jì)算機(jī)監(jiān)控系統(tǒng)的功能,進(jìn)行功能模塊的劃分,進(jìn)而進(jìn)行基本“類(lèi)庫(kù)”的創(chuàng)建、進(jìn)行數(shù)據(jù)操作的封裝。在計(jì)算機(jī)監(jiān)控系統(tǒng)中,這些“類(lèi)庫(kù)”的功能應(yīng)該反映計(jì)算機(jī)監(jiān)控系統(tǒng)的實(shí)際應(yīng)用情況。同時(shí),對(duì)于新增加的功能,類(lèi)也要具有良好的包容

81、性,當(dāng)某一部分的功能發(fā)生改變時(shí),也不會(huì)影響其它功能的正常實(shí)現(xiàn)。</p><p>  現(xiàn)代社會(huì)發(fā)展很快,對(duì)計(jì)算機(jī)監(jiān)控軟件的功能要求也瞬息萬(wàn)變,因此,面向?qū)ο蟮能浖_(kāi)發(fā)技術(shù)可很好地適應(yīng)這一要求,使軟件開(kāi)發(fā)者可以快速地開(kāi)發(fā)出安全、穩(wěn)定、實(shí)用、高效的計(jì)算機(jī)監(jiān)控軟件。</p><p>  第四章 遠(yuǎn)程計(jì)算機(jī)管理軟件實(shí)現(xiàn)</p><p>  4.1 系統(tǒng)要求及功能要求</

82、p><p>  4.1.1 系統(tǒng)要求</p><p>  雖然該系統(tǒng)是單純的遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理不涉及硬件接入,所以有別于傳統(tǒng)意義上用于計(jì)算機(jī)控制技術(shù)的監(jiān)控系統(tǒng),但是在系統(tǒng)要求上仍然必須具備以下三個(gè)特點(diǎn): </p><p>  1.時(shí)效性:這里的時(shí)效性包括實(shí)時(shí)性和分時(shí)性。遠(yuǎn)程計(jì)算機(jī)管理系統(tǒng)作為一種實(shí)時(shí)計(jì)算機(jī)系統(tǒng)。實(shí)時(shí)性就是計(jì)算機(jī)監(jiān)控系統(tǒng)區(qū)別于其它普通計(jì)算機(jī)系統(tǒng)的關(guān)鍵特點(diǎn),

83、也是衡量一個(gè)計(jì)算機(jī)監(jiān)控系統(tǒng)性能的一個(gè)重要指標(biāo)。實(shí)時(shí)性有以下幾層涵義:首先是服務(wù)器端對(duì)客戶(hù)端請(qǐng)求的及時(shí)響應(yīng)能力;其次是系統(tǒng)實(shí)時(shí)的監(jiān)控?cái)?shù)據(jù)。分時(shí)性主要是系統(tǒng)主要采用請(qǐng)求應(yīng)答的方式處理,所以只需在請(qǐng)求的時(shí)間上做出反應(yīng)既可。</p><p>  2.可靠性:計(jì)算機(jī)監(jiān)控系統(tǒng)的可靠性是指系統(tǒng)無(wú)故障運(yùn)行的能力?,F(xiàn)場(chǎng)過(guò)程在連續(xù)運(yùn)行,計(jì)算機(jī)系統(tǒng)也必須同步連續(xù)運(yùn)行,并對(duì)現(xiàn)場(chǎng)過(guò)程進(jìn)行監(jiān)測(cè)和控制。即使系統(tǒng)由于其他原因出現(xiàn)故障和錯(cuò)誤,計(jì)算

84、機(jī)監(jiān)控系統(tǒng)仍能照常運(yùn)行、做出實(shí)時(shí)響應(yīng)并記錄下完整數(shù)據(jù)。可靠性常用“平均無(wú)故障運(yùn)行時(shí)間”,即平均的故障間隔時(shí)間MTBF(mean time between failures)來(lái)衡程序</p><p>  3.安全性:安全性是遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)極為關(guān)鍵的設(shè)計(jì)環(huán)節(jié)?,F(xiàn)在,網(wǎng)絡(luò)上惡意代碼、木馬、黑客程序泛濫成災(zāi)。通過(guò)網(wǎng)絡(luò)進(jìn)行信息盜取和數(shù)據(jù)破壞的情況日益猖撅,對(duì)于開(kāi)放了端口的服務(wù)器端造成了重大威脅。因此為了保障服務(wù)器端

85、的安全性。既要做到遠(yuǎn)程接入用戶(hù)安全認(rèn)證,同時(shí)也要做到服務(wù)器端信息的存貯安全和傳輸安全,就要采取措施(如,數(shù)據(jù)加密技術(shù)等等)防止有人惡意修改和竊取信息。</p><p>  4.1.2 功能要求</p><p>  近年來(lái)出現(xiàn)了很多遠(yuǎn)程計(jì)算機(jī)管理軟件。如諾頓公司的PCANYWHERE,同時(shí)一些木馬程序?qū)τ陂_(kāi)發(fā)遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)也有一定的借鑒作用,通過(guò)對(duì)同類(lèi)系統(tǒng)的比較和研究的范圍,本軟件必

86、須具有以下基本功能:</p><p>  1.客戶(hù)端可以按需察看服務(wù)器(遠(yuǎn)程計(jì)算機(jī))的網(wǎng)絡(luò)連接狀態(tài)。</p><p>  2.客戶(hù)端可以統(tǒng)計(jì)某一時(shí)間點(diǎn)的IP、TCP、UDP等統(tǒng)計(jì)數(shù)據(jù)。</p><p>  3.客戶(hù)端可以根據(jù)端口關(guān)聯(lián)進(jìn)程。</p><p>  4.客戶(hù)端可以根據(jù)需要阻塞服務(wù)器某個(gè)端口通信。</p><p&g

87、t;  5.客戶(hù)端可以控制服務(wù)器的重啟動(dòng),關(guān)機(jī)等操作。</p><p>  6.客戶(hù)端可以向服務(wù)器端發(fā)送信息,用于兩端通信之間的溝通。</p><p>  7.客戶(hù)端可以獲取服務(wù)器端進(jìn)程和服務(wù)信息,并且根據(jù)需要終止進(jìn)程和服務(wù)。</p><p>  同時(shí)為了形成功能更加強(qiáng)大的遠(yuǎn)程計(jì)算機(jī)管理系統(tǒng),它應(yīng)該還具備以下擴(kuò)展功能:</p><p>  1

88、.客戶(hù)端實(shí)時(shí)監(jiān)控服務(wù)器端屏幕信息</p><p>  2.客戶(hù)端可以控制遠(yuǎn)程計(jì)算機(jī)的鍵盤(pán)和鼠標(biāo),并且記錄鍵盤(pán)輸入的信息。</p><p>  3.客戶(hù)端對(duì)服務(wù)器端磁盤(pán)文件進(jìn)行各種操作包括察看,修改,增刪。并且可以復(fù)制實(shí)現(xiàn)客戶(hù)端和服務(wù)器端的文件傳輸。</p><p>  同時(shí)為了實(shí)現(xiàn)客戶(hù)端/服務(wù)器端的協(xié)調(diào)工作,我們必須設(shè)定一個(gè)用于通信的規(guī)則如下:</p>

89、<p><b>  1.客戶(hù)端發(fā)送規(guī)范</b></p><p>  消息傳遞:SINFO+消息內(nèi)容</p><p>  獲取TCP表:GTCPT</p><p>  獲取UDP表:GUDPT</p><p>  獲取IP統(tǒng)計(jì):GIPC</p><p>  獲取TCP統(tǒng)計(jì):GTCPC&l

90、t;/p><p>  獲取UDP統(tǒng)計(jì):GUDPC</p><p>  刪除網(wǎng)絡(luò)連接:CUTP+信息</p><p>  關(guān)聯(lián)進(jìn)程:PROCESSANDPORT+端口</p><p>  強(qiáng)制關(guān)機(jī):CLOSE</p><p><b>  退出系統(tǒng):EXIT</b></p><p>

91、;  獲取進(jìn)程:GPROCESS</p><p>  2.服務(wù)器端發(fā)送規(guī)范</p><p>  消息傳遞:SINFO+消息內(nèi)容</p><p>  發(fā)送TCP表:RTCPT+內(nèi)容</p><p>  發(fā)送UDP表:RUDPT+內(nèi)容</p><p>  發(fā)送IP統(tǒng)計(jì):RIPC+內(nèi)容</p><p>

92、;  發(fā)送TCP統(tǒng)計(jì):RTCPC+內(nèi)容</p><p>  發(fā)送UDP統(tǒng)計(jì):RUDPC+內(nèi)容</p><p>  發(fā)送PORT數(shù)據(jù):RPORT+內(nèi)容</p><p><b>  退出系統(tǒng):EXIT</b></p><p>  4.2 系統(tǒng)采用主要技術(shù) </p><p><b>  1.T

93、CP通信技術(shù)</b></p><p>  主要是基于TCP/IP傳輸協(xié)議的套接字通信技術(shù)。包括套接字類(lèi)型的選擇、創(chuàng)建、配置到數(shù)據(jù)的發(fā)送和接收等技術(shù)。</p><p><b>  2.端口的選擇</b></p><p>  套接字的通信需要選擇一個(gè)合適的端口,一般的選擇在1000以上,而且越大越好,因?yàn)?000以下的端口是常用端口。而

94、且使用端口比較大的需要比較長(zhǎng)的時(shí)間才能發(fā)現(xiàn)。</p><p>  3.網(wǎng)絡(luò)端口掃描技術(shù)</p><p>  設(shè)定一定的端口掃描范圍,然后創(chuàng)建socket,通過(guò)socket的connect方法來(lái)接受受控端的IP地址及對(duì)應(yīng)的端口,檢測(cè)非法的開(kāi)放端口。</p><p>  4.多線(xiàn)程處理技術(shù) </p><p>  本文的多線(xiàn)程技術(shù)主要是通過(guò)使用多線(xiàn)

95、程機(jī)制,完成數(shù)據(jù)的發(fā)送、接受和傳輸。</p><p>  5.windows API函數(shù)</p><p>  “遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)”很多功能都是通過(guò)大量的Windows API函數(shù)實(shí)現(xiàn),例如獲得網(wǎng)絡(luò)狀態(tài)表,獲得系統(tǒng)信息,進(jìn)程等等</p><p><b>  6.木馬技術(shù)</b></p><p>  該程序的服務(wù)器端程

96、序具有開(kāi)機(jī)自啟動(dòng)。</p><p>  4.3 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理軟件的設(shè)計(jì)框架</p><p>  遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理軟件采用C/S模式,服務(wù)器端用于遠(yuǎn)程計(jì)算機(jī)中,客戶(hù)端位于本地計(jì)算機(jī)中。服務(wù)器端執(zhí)行客戶(hù)端發(fā)來(lái)請(qǐng)求要求,并且將應(yīng)答結(jié)果在客戶(hù)端中表現(xiàn)出來(lái),從而實(shí)現(xiàn)監(jiān)控與被監(jiān)控的目的。</p><p><b>  圖4-1系統(tǒng)模塊圖</b><

97、;/p><p><b>  客戶(hù)端模塊:</b></p><p>  1.主框架:該框架借鑒管理軟件框架,采用窗口對(duì)話(huà)框,按鈕等簡(jiǎn)單的圖形化界面使得該框架具有良好得人機(jī)交互性,控件的屬性使用通用的命名方式采用同一資源簡(jiǎn)單輕易的轉(zhuǎn)化成多語(yǔ)言版本的遠(yuǎn)程控制軟件。保留服務(wù),進(jìn)程管理,屏幕監(jiān)控等功能給軟件的可擴(kuò)展性留下了很大的空間,只需要將需要的模塊直接添加進(jìn)去,實(shí)現(xiàn)無(wú)逢結(jié)合。&

98、lt;/p><p>  2.網(wǎng)絡(luò)模塊:負(fù)責(zé)連接客戶(hù)端,向服務(wù)端發(fā)送獲取服務(wù)段網(wǎng)絡(luò)連接狀態(tài)命令,統(tǒng)計(jì)TCP、UDP、IP數(shù)據(jù)包以及丟包,延時(shí)等屬性信息;監(jiān)聽(tīng)某一個(gè)端口對(duì)通過(guò)該端口的數(shù)據(jù)量實(shí)時(shí)監(jiān)控;接受來(lái)自客戶(hù)端的數(shù)據(jù)包。</p><p>  3.同步模塊:為了使客戶(hù)端與服務(wù)器端可以協(xié)同工作,必須對(duì)軟件通信過(guò)程制定同步規(guī)則,使得該軟件可以通過(guò)該規(guī)則正常有序的通信。</p><p

99、>  4.?dāng)?shù)據(jù)包顯示:網(wǎng)絡(luò)模塊接受的數(shù)據(jù)包通過(guò)同步模塊進(jìn)行分類(lèi),然后在該模塊中顯示出來(lái)。</p><p><b>  服務(wù)器端模塊:</b></p><p> ?。保W(wǎng)絡(luò)模塊:負(fù)責(zé)監(jiān)聽(tīng)網(wǎng)絡(luò)遠(yuǎn)程的連接,接受客戶(hù)端發(fā)送的服務(wù)請(qǐng)求,發(fā)送服務(wù)應(yīng)答。</p><p>  2.處理模塊:執(zhí)行客戶(hù)端的服務(wù)請(qǐng)求。</p><p>

100、 ?。常侥K:負(fù)責(zé)與服務(wù)器端協(xié)同工作。</p><p>  4.4 遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)核心功能及實(shí)現(xiàn)</p><p>  4.4.1系統(tǒng)界面設(shè)計(jì)</p><p>  為了滿(mǎn)足具有良好的人機(jī)交互性的要求,系統(tǒng)客戶(hù)端使用的用戶(hù)界面是核心要求。因?yàn)橛脩?hù)是通過(guò)界面直接和計(jì)算機(jī)交互的,它展示了系統(tǒng)給用戶(hù)的感覺(jué)。Theo Mndel(美國(guó)計(jì)算機(jī)學(xué)家)關(guān)于軟件界面設(shè)計(jì)的著

101、作中提出了三條黃金規(guī)則:</p><p>  1.讓用戶(hù)去控制計(jì)算機(jī)是指設(shè)計(jì)軟件界面時(shí),要給使用它的用戶(hù)以更多的自由,而不是以界面約束和界面限制來(lái)強(qiáng)迫用戶(hù)操作以簡(jiǎn)化交互模式,即讓用戶(hù)的主動(dòng)性更大一些,讓用戶(hù)來(lái)控制計(jì)算機(jī),而不是用計(jì)算機(jī)來(lái)控制用戶(hù)。</p><p> ?。玻疁p少用戶(hù)的記憶負(fù)擔(dān)是指用戶(hù)必須記住的東西越多,和系統(tǒng)交互時(shí)出錯(cuò)的可能性也</p><p>  就

102、越大。只要可能,系統(tǒng)就應(yīng)該“記住”有關(guān)的信息,并通過(guò)能夠幫助回憶的交互場(chǎng)景來(lái)輔助用戶(hù)與計(jì)算機(jī)交互。</p><p>  3.保持界面的一致是用戶(hù)應(yīng)以一致的方式展示和獲取信息,這樣才不會(huì)造成用戶(hù)對(duì)信息的理解錯(cuò)誤。</p><p>  遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)客戶(hù)端結(jié)合Theo Mandel提出的三條黃金規(guī)則的要求,同時(shí)考慮客戶(hù)端的實(shí)際情況,向用戶(hù)提供了方便靈活的與用戶(hù)交互的界面,并注意保持界面

103、的一致性,同時(shí),采用多種方式給用戶(hù)以信息提示,減少用戶(hù)的記憶。如圖4-2所示:它具有包括菜單欄,工具欄、狀態(tài)欄等等。</p><p><b>  圖4-2系統(tǒng)客戶(hù)端</b></p><p> ?。保藛螜诎ㄎ募?、監(jiān)控命令、窗口三個(gè)菜單項(xiàng)。所有子窗口的打開(kāi)都是從這些開(kāi)始的,其中文件中包括用戶(hù)登錄、系統(tǒng)設(shè)置、斷開(kāi)連接、退出四個(gè)子菜單項(xiàng)。其中系統(tǒng)設(shè)置包括端口號(hào)選擇、日志文

104、件的存儲(chǔ)位置等。監(jiān)控中包括網(wǎng)絡(luò)監(jiān)控,屏幕監(jiān)控子菜單項(xiàng)。命令包括:查看進(jìn)程、關(guān)機(jī)、消息傳遞等。窗口中包括垂直,水平,平鋪,排列四個(gè)子菜單項(xiàng)。</p><p> ?。玻ぞ邫诎▽?shí)時(shí)監(jiān)視,停止監(jiān)視、消息、幫助按鈕。其中工具欄為所有子窗口共用所以根據(jù)當(dāng)前活動(dòng)子窗口所需按鈕在工具欄反應(yīng)出來(lái)。</p><p> ?。常疇顟B(tài)欄用于顯示連接狀態(tài)、遠(yuǎn)程IP和時(shí)間等,方便用戶(hù)使用,了解當(dāng)前狀態(tài)。</p

105、><p>  4.4.2 通信模塊</p><p><b>  1.客戶(hù)端通信模塊</b></p><p>  通信模塊采用多線(xiàn)程編程,其中多線(xiàn)程用于接受信息處理。首先創(chuàng)建一個(gè)Socket方法如下:</p><p>  Dim remoteEP As New IPEndPoint(Net.IPAddress.Parse(fr

106、mSetting.txt_ip.Text), frmSetting.txt_port.Text)</p><p>  cliSocket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)</p><p>  cliSocket.Connect(remoteEP)</p>

107、<p>  然后啟動(dòng)接受信息線(xiàn)程:</p><p>  myThread = New Thread(AddressOf ReciveMsg)</p><p>  myThread.Start()</p><p>  BeginInvoke(New EventHandler(AddressOf fLinkTable), data) 'Invoke保

108、證線(xiàn)程安全</p><p>  關(guān)閉系統(tǒng)前向服務(wù)器端發(fā)送關(guān)閉系統(tǒng)信息,然后再關(guān)閉線(xiàn)程方法如下:</p><p>  If MessageBox.Show("你確定要退出該系統(tǒng)?", "遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)管理系統(tǒng)[客戶(hù)端]", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論