版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、遠(yuǎn)程控制系統(tǒng)中主控端及部分被控端設(shè)計(jì)摘 要目前,隨著計(jì)算機(jī)網(wǎng)絡(luò)的廣泛應(yīng)用,網(wǎng)絡(luò)速度越來(lái)越快,使用遠(yuǎn)程控制技術(shù),可以對(duì)遠(yuǎn)程計(jì)算機(jī)進(jìn)行操作,就像控制本地計(jì)算機(jī)一樣。這種技術(shù)在遠(yuǎn)程設(shè)備(軟件)的維護(hù)、監(jiān)控與故障診斷等方面有著廣泛的應(yīng)用前景。遠(yuǎn)程技術(shù)支持將占據(jù)技術(shù)支持的主流:遠(yuǎn)程教學(xué)和培訓(xùn)也將快速發(fā)展。企業(yè)規(guī)模將迅速擴(kuò)大,所有這些發(fā)展都為遠(yuǎn)程控制軟件提供了一個(gè)廣闊的天地。簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)由主控端和被控端兩部分組成。主控端用于實(shí)施各種對(duì)連網(wǎng)計(jì)算機(jī)的監(jiān)控操作,被控端對(duì)于接收到的數(shù)據(jù)進(jìn)行分析,解釋并執(zhí)行。系統(tǒng)主要可以實(shí)現(xiàn)獲取被控端信息、被控端系統(tǒng)控制、消息發(fā)送和被控端界面控制的監(jiān)控功能。作者的主要工作是主控
2、端的設(shè)計(jì)與實(shí)現(xiàn)及整個(gè)獲取被控端信息模塊的設(shè)計(jì)與實(shí)現(xiàn)。本文對(duì)遠(yuǎn)程控制系統(tǒng)原理和主要相關(guān)技術(shù)作了簡(jiǎn)單介紹,在進(jìn)行的需求分析之后,詳細(xì)描述了本系統(tǒng)的主控端的設(shè)計(jì)與實(shí)現(xiàn)及被控端的獲取被控端信息模塊的設(shè)計(jì)與實(shí)現(xiàn),最后表格形式給出測(cè)試結(jié)果。 關(guān)鍵詞:遠(yuǎn)程控制;C/S模式;套接字Simple Remote Control System - The Design of Controlling Terminal and Parts of Controlled Terminal AbstractAt present, along with the development of the network techno
3、logy, the speed of the network is faster and faster. Using the technology of remote control, the remote computer can be controlled as conveniently as the local one. The technology of remote control can be very useful in the maintenance, monitoring and malfunction diagnosis of remote computers. Remot
4、e control technique will be a tide of technique support; distance education and train will also be developing in a high speed. The scope of enterprises will extend at a very fast speed in the same way. These all development provides a wide space for remote control software. The simple remote control
5、 system consists of two parts including controlling terminal and controlled terminal. We can monitor the controlled terminal and implement some operation about controlling the controlled terminal on the controlling monitor. The controlled terminal is used for analyzing, explaining and implement the
6、received data. The system can implement the function of getting the information of controlled terminal, control controlled terminal, sending messages, controlling the screen of the controlled computer and so on. My job is the design and implementation of the controlling terminal and the function of
7、getting the information of controlled terminal.The paper simply introduces the theory of remote control and the main correlative technology. After the analysis, it describes the design and implement of the controlling terminal and the function of getting the information of controlled terminal. At la
8、st, it shows the result in form of figures.Key words: Remote control; Client/Server mode; socket 目 錄論文總頁(yè)數(shù):24頁(yè)1引言11.1背景11.2國(guó)內(nèi)外研究現(xiàn)狀11.3本課題研究的意義21.4作者主要工作22相關(guān)理論基礎(chǔ)32.1遠(yuǎn)程控制概述3遠(yuǎn)程控制軟件的原理3遠(yuǎn)程控制技術(shù)的應(yīng)用42.2開(kāi)發(fā)環(huán)境52.3主要控件介紹5Winsock控件5Timer控件介紹52.4C/S模式52.5TCP協(xié)議與UDP協(xié)議介紹6TCP 協(xié)議6UDP 協(xié)議63需求分析63.1系統(tǒng)概貌63.2功能要求73.3主控端設(shè)計(jì)思路
9、73.4性能要求83.5運(yùn)行要求84主控端及部分被控端設(shè)計(jì)與實(shí)現(xiàn)84.1簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)結(jié)構(gòu)設(shè)計(jì)8簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)的結(jié)構(gòu)8簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)的功能模塊94.2系統(tǒng)功能的實(shí)現(xiàn)10主控端界面10功能實(shí)現(xiàn)過(guò)程11系統(tǒng)控制功能的實(shí)現(xiàn)11發(fā)送消息功能的實(shí)現(xiàn)13界面控制功能的實(shí)現(xiàn)144.3部分被控端程序功能的實(shí)現(xiàn)16被控端的連接16獲取被控端信息功能的實(shí)現(xiàn)175測(cè)試195.1測(cè)試環(huán)境195.2測(cè)試過(guò)程與結(jié)果19結(jié) 論21參考文獻(xiàn)221 引言1.1 背景遠(yuǎn)程控制是在網(wǎng)絡(luò)上由一臺(tái)電腦(主控端Remote/客戶(hù)端)遠(yuǎn)距離去控制另一臺(tái)電腦(被控端Host/服務(wù)器端)的技術(shù),這里的遠(yuǎn)程不是字面意思的遠(yuǎn)距離,一般指通過(guò)
10、網(wǎng)絡(luò)控制遠(yuǎn)端電腦,不過(guò),大多數(shù)時(shí)候我們所說(shuō)的遠(yuǎn)程控制往往指在局域網(wǎng)中的遠(yuǎn)程控制而言,遠(yuǎn)程控制必須通過(guò)網(wǎng)絡(luò)才能進(jìn)行。主控端和被控端可以是位于同一局域網(wǎng)的同一房間中,也可以是連入Internet的處在任何位置的兩臺(tái)或多臺(tái)計(jì)算機(jī)。簡(jiǎn)單遠(yuǎn)程控制具有和木馬相同的原理,遠(yuǎn)程控制一旦被居心不良者鉆了空子,它的危害甚至比木馬還要嚴(yán)重。遠(yuǎn)程控制具有很多功能,例如遠(yuǎn)程培訓(xùn)與教學(xué).遠(yuǎn)程辦公.遠(yuǎn)程管理與維護(hù).遠(yuǎn)程監(jiān)控。電腦中的遠(yuǎn)程控制技術(shù),始于DOS時(shí)代,只不過(guò)當(dāng)時(shí)由于技術(shù)上沒(méi)有什么大的變化,網(wǎng)絡(luò)不發(fā)達(dá),市場(chǎng)沒(méi)有更高的要求,所以遠(yuǎn)程控制技術(shù)沒(méi)有引起更多人的注意。但是,隨著網(wǎng)絡(luò)的高度發(fā)展,電腦的管理及技術(shù)支持的需要,遠(yuǎn)
11、程操作及控制技術(shù)越來(lái)越引起人們的關(guān)注。1.2 國(guó)內(nèi)外研究現(xiàn)狀起初,使用遠(yuǎn)程控制軟件,是為了讓PC用戶(hù)在離開(kāi)辦公室時(shí)能訪(fǎng)問(wèn)其臺(tái)式PC硬盤(pán)中的信息,甚至可以通過(guò)其臺(tái)式PC訪(fǎng)問(wèn)企業(yè)網(wǎng)絡(luò)資源,今天,許多企業(yè)和增值分銷(xiāo)商正在把遠(yuǎn)程控制能力作為有效的技術(shù)支持工具。很多網(wǎng)絡(luò)管理員都采用這類(lèi)軟件對(duì)局域網(wǎng)進(jìn)行管理,或者在家中更新自己網(wǎng)站的內(nèi)容。這類(lèi)軟件對(duì)于出差在外的商務(wù)人員用處非常大,因?yàn)樗麄兛梢噪S時(shí)提取自己家里計(jì)算機(jī)中的數(shù)據(jù)和資料。遠(yuǎn)程控制軟件在計(jì)算機(jī)遠(yuǎn)程教學(xué)和培訓(xùn)中也發(fā)揮了很大的作用,使身處異地的學(xué)生能夠與老師進(jìn)行適時(shí)交流,猶如坐在同一間教室。近年來(lái),黑客技術(shù)不斷成熟起來(lái),對(duì)網(wǎng)絡(luò)安全造成了極大的威脅。黑客的
12、主要攻擊手段之一就是使用遠(yuǎn)程控制技術(shù),滲透到對(duì)方的主機(jī)系統(tǒng)里,從而實(shí)現(xiàn)遠(yuǎn)程操作目標(biāo)主機(jī),其破壞力之大,是絕不容忽視的。目前,遠(yuǎn)程控制技術(shù)也廣泛應(yīng)用在工業(yè)領(lǐng)域,可以對(duì)遠(yuǎn)程數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)控,提高工作效率,進(jìn)而降低管理成本。遠(yuǎn)程控制逐漸成為當(dāng)前信息技術(shù)領(lǐng)域的熱點(diǎn)。,遠(yuǎn)程控制在國(guó)內(nèi)外都有不同程度的研究。相對(duì)于來(lái)說(shuō),由于西方國(guó)家在信息技術(shù)和計(jì)算機(jī)控制技術(shù)的發(fā)展上的優(yōu)勢(shì),他們?cè)谶h(yuǎn)程控制方面相對(duì)早一些,已經(jīng)有了一些基本成熟的產(chǎn)品問(wèn)世。國(guó)內(nèi)由于網(wǎng)絡(luò)的飛速發(fā)展,近幾年也開(kāi)始積極的研究。國(guó)內(nèi)外在遠(yuǎn)程控制機(jī)器人控制方面的研究相對(duì)比其它領(lǐng)域要多一些。這些遠(yuǎn)程控制系統(tǒng)普遍采用了客戶(hù)/服務(wù)器模型(即C/S模型),可以是一
13、對(duì)一的模式,也可以是一對(duì)多的模式。遠(yuǎn)程控制一般支持下面的這些網(wǎng)絡(luò)方式:LAN、WAN、撥號(hào)方式、互聯(lián)網(wǎng)方式。此外,有的遠(yuǎn)程控制軟件還支持通過(guò)串口、并口、紅外端口來(lái)對(duì)遠(yuǎn)程機(jī)進(jìn)行控制(不過(guò),這里說(shuō)的遠(yuǎn)程電腦,只能是有限距離范圍內(nèi)的電腦了)。傳統(tǒng)的遠(yuǎn)程控制軟件一般使用NETBEUI、NETBIOS、IPX/SPX、TCP/IP等協(xié)議來(lái)實(shí)現(xiàn)遠(yuǎn)程控制,不過(guò),隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,目前很多遠(yuǎn)程控制軟件提供通過(guò)Web頁(yè)面以Java技術(shù)來(lái)控制遠(yuǎn)程電腦,這樣可以實(shí)現(xiàn)不同操作系統(tǒng)下的遠(yuǎn)程控制。1.3 本課題研究的意義隨著社會(huì)、科技、經(jīng)濟(jì)的不斷發(fā)展,遠(yuǎn)程控制技術(shù)的應(yīng)用范圍也在不斷擴(kuò)展。小到個(gè)人的使用,大到整個(gè)行業(yè)的應(yīng)
14、用。遠(yuǎn)程控制技術(shù)應(yīng)用到了我們生活中的各行各業(yè)中,從銀行、軍事、機(jī)要部門(mén)等特殊行業(yè)領(lǐng)域到電業(yè)部門(mén)、郵政電信部門(mén)、商業(yè)部門(mén)、普通工礦企業(yè)、道路交通領(lǐng)域、衛(wèi)生醫(yī)療部門(mén)以及賓館酒店行業(yè)等等,其卓越的功能也日益受到各個(gè)應(yīng)用行業(yè)的重視和青睞。遠(yuǎn)程控制是當(dāng)前信息技術(shù)領(lǐng)域的熱點(diǎn),使用遠(yuǎn)程控制技術(shù),我們可以克服因地域差異而造成的操作不便,讓網(wǎng)絡(luò)的效率得到更大的發(fā)揮。隨著技術(shù)的發(fā)展與網(wǎng)絡(luò)的普及,目前遠(yuǎn)程控制技術(shù)的應(yīng)用領(lǐng)域已經(jīng)相當(dāng)廣泛。我們不僅可以通過(guò)遠(yuǎn)程控制技術(shù)管理遠(yuǎn)端電腦,解決遠(yuǎn)端電腦的故障,與其他同事通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程協(xié)作,一起編輯一份文檔或者與其他團(tuán)隊(duì)成員交流信息,還可以在家里或旅途中使用公司內(nèi)部網(wǎng)絡(luò)的數(shù)據(jù)與
15、辦公設(shè)備,實(shí)現(xiàn)遠(yuǎn)程辦公。此外,您還能讓學(xué)員遠(yuǎn)程連接到您的電腦,實(shí)時(shí)學(xué)習(xí)軟件的操作,或者與多位遠(yuǎn)程連接用戶(hù)進(jìn)行多點(diǎn)會(huì)話(huà)。 對(duì)于個(gè)人用戶(hù)而言,遠(yuǎn)程控制技術(shù)最具吸引力的莫過(guò)于可以遙控遠(yuǎn)端的電腦。用戶(hù)可以在家中操作辦公室里的電腦,或者在辦公室里調(diào)用存儲(chǔ)在家中的文檔,同時(shí)還可以當(dāng)一回專(zhuān)家,通過(guò)遠(yuǎn)程控制計(jì)算機(jī)為朋友的電腦排憂(yōu)解難。1.4 作者主要工作 改系統(tǒng)軟件是本人與周睿同學(xué)共同研究開(kāi)發(fā)的,周睿同學(xué)主要負(fù)責(zé)被控端的設(shè)計(jì)與開(kāi)發(fā),本人主要負(fù)責(zé)主控端和部分被控端(獲取被控端信息)的設(shè)計(jì)與開(kāi)發(fā)。本人在系統(tǒng)開(kāi)發(fā)中的具體工作:1、搜尋與系統(tǒng)開(kāi)發(fā)相關(guān)的資料,熟悉VB開(kāi)發(fā)語(yǔ)言。 2、完成主控端界面設(shè)計(jì)。3、完成界面按鈕
16、與各個(gè)功能模塊的連接。4、完成主控端各個(gè)模塊的界面與程序代碼。5、完成整個(gè)獲取被控端信息功能模塊(包含被控端部分)。6、與周睿同學(xué)一起對(duì)系統(tǒng)進(jìn)行調(diào)試和測(cè)試。7、歸并相關(guān)系統(tǒng)開(kāi)發(fā)文檔,完成畢業(yè)論文的撰寫(xiě)。2 相關(guān)理論基礎(chǔ)整個(gè)系統(tǒng)采用C/S(服務(wù)器/客戶(hù)機(jī)),即被控端/主控端模型設(shè)計(jì)。主控端程序運(yùn)行在主控機(jī)上,被控端程序運(yùn)行在受控機(jī)上。主控端向被控端發(fā)送請(qǐng)求和控制指令,被控端響應(yīng)請(qǐng)求并執(zhí)行相應(yīng)的功能。雙方之間是基于TCP/IP協(xié)議進(jìn)行的點(diǎn)對(duì)點(diǎn)的通信。編碼是利用VB進(jìn)行編程,使用Visual Basic 6.0進(jìn)行編譯。2.1 遠(yuǎn)程控制概述遠(yuǎn)程控制是在網(wǎng)絡(luò)上由一臺(tái)電腦(主控端Remote/客戶(hù)端)遠(yuǎn)
17、距離去控制另一臺(tái)電腦(被控端Host/服務(wù)器端)的技術(shù),這里的遠(yuǎn)程不是字面意思的遠(yuǎn)距離,一般指通過(guò)網(wǎng)絡(luò)控制遠(yuǎn)端電腦,不過(guò),大多數(shù)時(shí)候我們所說(shuō)的遠(yuǎn)程控制往往指在局域網(wǎng)中的遠(yuǎn)程控制而言。當(dāng)操作者使用主控電腦所控制被控電腦時(shí),就如同坐在被控電腦的屏幕前一樣,可以啟動(dòng)被控電腦的應(yīng)用程序,可以使用被控電腦的文件資料,甚至可以利用被控電腦的外部打印設(shè)備(打印機(jī))和通信設(shè)備(調(diào)制解調(diào)器或者專(zhuān)線(xiàn)等)來(lái)進(jìn)行打印和訪(fǎng)問(wèn)互聯(lián)網(wǎng),就像你利用遙控器遙控電視的音量、變換頻道或者開(kāi)關(guān)電視機(jī)一樣。不過(guò),有一個(gè)概念需要明確,那就是主控電腦只是將鍵盤(pán)和鼠標(biāo)的指令傳送給遠(yuǎn)程電腦,同時(shí)將被控電腦的屏幕畫(huà)面通過(guò)通信線(xiàn)路回傳過(guò)來(lái)。也就是
18、說(shuō),我們控制被控電腦進(jìn)行操作似乎是在眼前的電腦上進(jìn)行的,實(shí)質(zhì)是在遠(yuǎn)程電腦中實(shí)現(xiàn)的,不論打開(kāi)文件,還是上網(wǎng)瀏覽、下載等都是存儲(chǔ)在遠(yuǎn)程的被控電腦中的。2.1.1 遠(yuǎn)程控制軟件的原理遠(yuǎn)程控制軟件一般分兩個(gè)部分:一部分是客戶(hù)端程序Client,另一部分是服務(wù)器端程序Server(或Systry),在使用前需要將客戶(hù)端程序安裝到主控電腦上,將服務(wù)器端程序安裝到被控電腦上。它的控制的過(guò)程一般是先在主控電腦上執(zhí)行客戶(hù)端程序,像一個(gè)普通的客戶(hù)一樣向被控電腦中的服務(wù)器端程序發(fā)出信號(hào),建立一個(gè)特殊的遠(yuǎn)程服務(wù),然后通過(guò)這個(gè)遠(yuǎn)程服務(wù),使用各種遠(yuǎn)程控制功能發(fā)送遠(yuǎn)程控制命令,控制被控電腦中的各種應(yīng)用程序運(yùn)行,我們稱(chēng)這種遠(yuǎn)
19、程控制方式為基于遠(yuǎn)程服務(wù)的遠(yuǎn)程控制。通過(guò)遠(yuǎn)程控制軟件,我們可以進(jìn)行很多方面的遠(yuǎn)程控制,包括獲取目標(biāo)電腦屏幕圖像、窗口及進(jìn)程列表;記錄并提取遠(yuǎn)端鍵盤(pán)事件(擊鍵序列,即監(jiān)視遠(yuǎn)端鍵盤(pán)輸入的內(nèi)容);可以打開(kāi)、關(guān)閉目標(biāo)電腦的任意目錄并實(shí)現(xiàn)資源共享;提取撥號(hào)網(wǎng)絡(luò)及普通程序的密碼;激活、中止遠(yuǎn)端程序進(jìn)程;管理遠(yuǎn)端電腦的文件和文件夾;關(guān)閉或者重新啟動(dòng)遠(yuǎn)端電腦中的操作系統(tǒng);修改Windows注冊(cè)表;通過(guò)遠(yuǎn)端電腦上、下載文件和捕獲音頻、視頻信號(hào)等。2.1.2 遠(yuǎn)程控制技術(shù)的應(yīng)用1、遠(yuǎn)程辦公這種遠(yuǎn)程的辦公方式不僅大大緩解了城市交通狀況,減少了環(huán)境污染,還免去了人們上下班路上奔波的辛勞,更可以提高企業(yè)員工的工作效率和
20、工作興趣。2、遠(yuǎn)程技術(shù)支持通常,遠(yuǎn)距離的技術(shù)支持必須依賴(lài)技術(shù)人員和用戶(hù)之間的電話(huà)交流來(lái)進(jìn)行,這種交流既耗時(shí)又容易出錯(cuò)。許多用戶(hù)對(duì)電腦了解得很少,然而當(dāng)遇到問(wèn)題時(shí),他們必須向無(wú)法看到電腦屏幕的技術(shù)人員描述問(wèn)題的癥狀,并且嚴(yán)格遵守技術(shù)人員的指示精確地描述屏幕上的內(nèi)容,但是由于他們的電腦專(zhuān)業(yè)知識(shí)非常少,描述往往不得要領(lǐng),這就給技術(shù)人員判斷故障制造了非常大的障礙。即使技術(shù)人員明白了用戶(hù)電腦的問(wèn)題所在,在嘗試解決問(wèn)題時(shí),技術(shù)人員可能會(huì)指導(dǎo)用戶(hù)執(zhí)行一系列復(fù)雜的命令,而這個(gè)過(guò)程對(duì)用戶(hù)來(lái)說(shuō)是十分困難的,因?yàn)榧夹g(shù)人員要依靠自己的語(yǔ)言來(lái)“操縱”用戶(hù)的鼠標(biāo)和鍵盤(pán)簡(jiǎn)直是太難了,如果用戶(hù)不能正確地遵照指示去做,問(wèn)題可能
21、會(huì)進(jìn)一步惡化,電腦很可能會(huì)因?yàn)殄e(cuò)誤的操作導(dǎo)致系統(tǒng)的崩潰。這樣一來(lái),往往是技術(shù)人員要為十分簡(jiǎn)單的一個(gè)問(wèn)題和用戶(hù)說(shuō)上十幾分鐘,甚至?xí)?zhuān)程跑到很遠(yuǎn)的用戶(hù)那里幫助解決問(wèn)題,而用戶(hù)往往因?yàn)閱?wèn)題還沒(méi)有解決,只好將電腦閑置不用,單等技術(shù)人員上門(mén)來(lái)解決問(wèn)題。有了遠(yuǎn)程控制技術(shù),技術(shù)人員就可以遠(yuǎn)程控制用戶(hù)的電腦,就像直接操作本地電腦一樣,只需要用戶(hù)的簡(jiǎn)單幫助就可以得到該機(jī)器存在的問(wèn)題的第一手材料,很快就可以找到問(wèn)題的所在,并加以解決。3、遠(yuǎn)程交流利用遠(yuǎn)程技術(shù),商業(yè)公司可以實(shí)現(xiàn)和用戶(hù)的遠(yuǎn)程交流,采用交互式的教學(xué)模式,通過(guò)實(shí)際操作來(lái)培訓(xùn)用戶(hù),使用戶(hù)從技術(shù)支持專(zhuān)業(yè)人員那里學(xué)習(xí)示例知識(shí)變得十分容易。而教師和學(xué)生之間也可以
22、利用這種遠(yuǎn)程控制技術(shù)實(shí)現(xiàn)教學(xué)問(wèn)題的交流,學(xué)生可以不用見(jiàn)到老師,就得到老師手把手的輔導(dǎo)和講授。學(xué)生還可以直接在電腦中進(jìn)行習(xí)題的演算和求解,在此過(guò)程中,教師能夠輕松看到學(xué)生的解題思路和步驟,并加以實(shí)時(shí)的指導(dǎo)。4、遠(yuǎn)程維護(hù)和管理網(wǎng)絡(luò)管理員或者普通用戶(hù)可以通過(guò)遠(yuǎn)程控制技術(shù)為遠(yuǎn)端的電腦安裝和配置軟件、下載并安裝軟件修補(bǔ)程序、配置應(yīng)用程序和進(jìn)行系統(tǒng)軟件設(shè)置。2.2 開(kāi)發(fā)環(huán)境Visual Basic是基于對(duì)象的可視化程序開(kāi)發(fā)工具,它的優(yōu)點(diǎn)在于能夠快捷、簡(jiǎn)易的建立Windows應(yīng)用程序。Visual Basic是在原有BASIC語(yǔ)言的基礎(chǔ)上進(jìn)一步發(fā)展,除了保留了BASIC語(yǔ)言的易學(xué)易用的優(yōu)點(diǎn)外,進(jìn)一步增加了圖
23、形用戶(hù)界面的方法。專(zhuān)業(yè)人員可以用 Visual Basic實(shí)現(xiàn)其他任何Windows編輯語(yǔ)言的功能,而初學(xué)者也能迅速上手建立實(shí)用的應(yīng)用程序。Visual Basic 6.0中文版本簡(jiǎn)介:Visual Basic的前身是QBASIC,語(yǔ)言基礎(chǔ)是Basic。 Basic(Beginners All-Purpose Symbolic Instruction Code)語(yǔ)言,是一種在計(jì)算機(jī)技術(shù)發(fā)展史上應(yīng)用的最為廣泛的語(yǔ)言。Visual Basic在原有Basic語(yǔ)言的基礎(chǔ)上進(jìn)一步發(fā)展,至今包含了數(shù)百條語(yǔ)句、函數(shù)及關(guān)鍵詞,其中很多和Windows GUI有直接關(guān)系。Visual Basic除了保留了Ba
24、sic語(yǔ)言的易學(xué)易用的優(yōu)點(diǎn)外,進(jìn)一步增加了開(kāi)發(fā)圖形用戶(hù)界面的方法,以可視化的用戶(hù)界面設(shè)計(jì)機(jī)制,把程序設(shè)計(jì)人員從繁雜的界面設(shè)計(jì)工作中解脫出來(lái),可以輕易的開(kāi)發(fā)出具有優(yōu)秀的圖形界面和聲音、動(dòng)畫(huà)、圖片集成的多媒體應(yīng)用程序。自從微軟推出VB后,它便成為了程序開(kāi)發(fā)人員的首選工具。2.3 主要控件介紹2.3.1 Winsock控件Winsock 控件對(duì)用戶(hù)來(lái)說(shuō)是不可見(jiàn)的,它提供了訪(fǎng)問(wèn) TCP 和 UDP 網(wǎng)絡(luò)服務(wù)的方便途徑。Microsoft Access、Visual Basic、Visual C+ 或 Visual FoxPro 的開(kāi)發(fā)人員都可使用它。為編寫(xiě)客戶(hù)或服務(wù)器應(yīng)用程序,不必了解 TCP 的細(xì)節(jié)
25、或調(diào)用低級(jí)的 Winsock APIs。通過(guò)設(shè)置控件的屬性并調(diào)用其方法就可輕易連接到一臺(tái)遠(yuǎn)程機(jī)器上去,并且還可雙向交換數(shù)據(jù)。2.3.2 Timer控件介紹Timer(時(shí)鐘)控件響應(yīng)時(shí)間的流逝。它們獨(dú)立于用戶(hù),編程后可用來(lái)在一定的時(shí)間間隔執(zhí)行操作。此控件一般用處是檢查系統(tǒng)時(shí)鐘,判斷是否執(zhí)行某項(xiàng)任務(wù)。對(duì)于其它后臺(tái)處理,Timer空間也是非常有用的。2.4 C/S模式C/S(Client/Server,客戶(hù)端/服務(wù)器)模式又稱(chēng)C/S結(jié)構(gòu)。即大家熟知的客戶(hù)機(jī)和服務(wù)器結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過(guò)它可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到Client端和Server端來(lái)實(shí)現(xiàn),降低了系統(tǒng)的通訊開(kāi)
26、銷(xiāo)。Client端的任務(wù)是將用戶(hù)的要求提交給Server端,再將Server端返回的結(jié)果以特定的形式顯示給用戶(hù);Server端的任務(wù)是接收客戶(hù)端提出的服務(wù)請(qǐng)求,進(jìn)行相應(yīng)的處理,再將結(jié)果返回給客戶(hù)端。2.5 TCP協(xié)議與UDP協(xié)議介紹2.5.1 TCP 協(xié)議數(shù)據(jù)傳輸協(xié)議允許創(chuàng)建和維護(hù)與遠(yuǎn)程計(jì)算機(jī)的連接。連接兩臺(tái)計(jì)算機(jī)就可彼此進(jìn)行數(shù)據(jù)傳輸。如果創(chuàng)建客戶(hù)應(yīng)用程序,就必須知道服務(wù)器計(jì)算機(jī)名或者IP 地址(RemoteHost 屬性),還要知道進(jìn)行“偵聽(tīng)”的端口(RemotePort 屬性),然后調(diào)用 Connect 方法。如果創(chuàng)建服務(wù)器應(yīng)用程序,就應(yīng)設(shè)置一個(gè)收聽(tīng)端口(LocalPort 屬性)并調(diào)用
27、Listen 方法。當(dāng)客戶(hù)計(jì)算機(jī)需要連接時(shí)就會(huì)發(fā)生 ConnectionRequest 事件。為了完成連接,可調(diào)用 ConnectionRequest 事件內(nèi)的 Accept 方法。建立連接后,任何一方計(jì)算機(jī)都可以收發(fā)數(shù)據(jù)。為了發(fā)送數(shù)據(jù),可調(diào)用 SendData 方法。當(dāng)接收數(shù)據(jù)時(shí)會(huì)發(fā)生 DataArrival 事件。調(diào)用 DataArrival 事件內(nèi)的 GetData 方法就可獲取數(shù)據(jù)。2.5.2 UDP 協(xié)議用戶(hù)數(shù)據(jù)報(bào)協(xié)議 (UDP) 是一個(gè)無(wú)連接協(xié)議。跟 TCP 的操作不同,計(jì)算機(jī)并不建立連接。另外 UDP 應(yīng)用程序可以是客戶(hù)機(jī),也可以是服務(wù)器。為了傳輸數(shù)據(jù),首先要設(shè)置客戶(hù)計(jì)算機(jī)的 L
28、ocalPort 屬性。然后,服務(wù)器計(jì)算機(jī)只需將 RemoteHost 設(shè)置為客戶(hù)計(jì)算機(jī)的 Internet 地址,并將 RemotePort 屬性設(shè)置為跟客戶(hù)計(jì)算機(jī)的 LocalPort 屬性相同的端口,并調(diào)用 SendData 方法來(lái)著手發(fā)送信息。于是,客戶(hù)計(jì)算機(jī)使用 DataArrival 事件內(nèi)的 GetData 方法來(lái)獲取已發(fā)送的信息。3 需求分析3.1 系統(tǒng)概貌簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)包含被控端和主控端兩部分。被控端是運(yùn)行在受控計(jì)算機(jī)上的一個(gè)程序。當(dāng)運(yùn)行主控端程序后將其設(shè)置成功,被控端通過(guò)輸入主控端的IP地址,并利用winsock控件來(lái)實(shí)現(xiàn)被控端與主控端的連接,然后通過(guò)主控端向被控端發(fā)送命
29、令,被控端響應(yīng)主控端的命令來(lái)實(shí)現(xiàn)相應(yīng)的功能。 主控端提供了一個(gè)集控制功能為一體的可視化界面,其作用是發(fā)送命令來(lái)實(shí)現(xiàn)對(duì)被控端的控制,該窗體包含了具有不同功能的按鈕,如:消息發(fā)送按鈕、隱藏任務(wù)欄按鈕、關(guān)閉計(jì)算機(jī)按鈕等。通過(guò)對(duì)這些按鈕的相應(yīng)操作,來(lái)實(shí)現(xiàn)對(duì)被控端的控制。3.2 功能要求本系統(tǒng)在功能要求上主要實(shí)現(xiàn)的功能有:主控端獲取被控端計(jì)算機(jī)系統(tǒng)信息、對(duì)被控端界面的控制、對(duì)被控端的系統(tǒng)控制以及對(duì)向被控端發(fā)送消息。1主控端獲取被控端系統(tǒng)信息。此模塊的主要功能是主控端能通過(guò)此功能了解到被控計(jì)算機(jī)上的系統(tǒng)信息,為后面進(jìn)一步的對(duì)被控端進(jìn)行控制作一個(gè)簡(jiǎn)單的了解,也同時(shí)通過(guò)此功能對(duì)被控計(jì)算機(jī)上所安裝的軟、硬件進(jìn)行
30、了解,做到對(duì)被控計(jì)算機(jī)的了解程度跟了解本機(jī)一樣。2對(duì)被控端的界面控制。此模塊主要實(shí)現(xiàn)主控端對(duì)被控計(jì)算機(jī)的用戶(hù)界面的控制,包括對(duì)開(kāi)始按鈕的隱藏以及顯示、任務(wù)欄的隱藏以及顯示和桌面圖標(biāo)的隱藏和顯示功能。3對(duì)被控端的系統(tǒng)控制。此模塊主要實(shí)現(xiàn)對(duì)被控計(jì)算機(jī)的機(jī)器系統(tǒng)的控制,包括對(duì)被控計(jì)算機(jī)實(shí)施關(guān)閉計(jì)算機(jī)、重新啟動(dòng)被控端計(jì)算機(jī)以及注銷(xiāo)被控端計(jì)算機(jī)目前使用的用戶(hù)功能。做到使主控端用戶(hù)在主控計(jì)算機(jī)上就能很容易的控制被控計(jì)算機(jī)的系統(tǒng)。4向被控端發(fā)送信息。此模塊主要實(shí)現(xiàn)主控計(jì)算機(jī)向被控計(jì)算機(jī)發(fā)送文字性消息的功能,有了此功能模塊的建立,主控端用戶(hù)可以在本機(jī)上向被控端用戶(hù)傳遞信息和發(fā)送消息,做到了主控端的用戶(hù)與被控端
31、用戶(hù)的聯(lián)系。3.3 主控端設(shè)計(jì)思路主控端主要是發(fā)送各種控制命令給被控端,控制被控端實(shí)現(xiàn)各種控制功能。當(dāng)程序運(yùn)行時(shí)首先要進(jìn)行主控端的設(shè)置,本系統(tǒng)采用了人性化的設(shè)計(jì),調(diào)用了Winsock控件,所以用戶(hù)不需要自己來(lái)設(shè)置端口,只要鼠標(biāo)點(diǎn)擊“設(shè)置主控端”按鈕就可以完成主控端的設(shè)置。設(shè)置成功后,系統(tǒng)提示設(shè)置成功,進(jìn)入監(jiān)聽(tīng)狀態(tài), 等待被控端發(fā)送連接請(qǐng)求,接收到連接請(qǐng)求后建立連接。主控端便可以實(shí)現(xiàn)對(duì)被控端的控制和消息的發(fā)送了。主控端分為兩大部分如圖1所示。第一個(gè)部分是操作部分,主要分為系統(tǒng)設(shè)置、被控端信息、系統(tǒng)控制、發(fā)送消息和界面控制五部分。第二部分是信息欄顯示,當(dāng)主控端程序運(yùn)行時(shí)會(huì)顯示主機(jī)的IP地址和主機(jī)名
32、,而當(dāng)連接建立后,信息欄會(huì)顯示被控端的IP地址。主控端操作 信息欄主控端設(shè)置被控端信息系統(tǒng)控制發(fā)送消息 界面控制 主控端IP地址主控端主機(jī)名被控端IP地址圖1 主控端結(jié)構(gòu)3.4 性能要求主控端界面應(yīng)當(dāng)簡(jiǎn)單、友好、方便使用和操作;被控端是用作運(yùn)行在被控計(jì)算機(jī)內(nèi)的可執(zhí)行文件,為提高執(zhí)行速度,從客戶(hù)端發(fā)送到服務(wù)端的信息應(yīng)盡量的少。主控端與被控端之間通過(guò)使用TCP協(xié)議建立連接,以實(shí)現(xiàn)對(duì)被控計(jì)算機(jī)的控制。3.5 運(yùn)行要求設(shè)計(jì)出的簡(jiǎn)單遠(yuǎn)程控制軟件應(yīng)當(dāng)在現(xiàn)在使用的大量操作系統(tǒng)上都能運(yùn)行。例如:Windows 2000、Windows XP、Windows 2003;能在較低的硬件配置上運(yùn)行,如128M的內(nèi)存
33、,AMD 1800+的處理器。4 主控端及部分被控端設(shè)計(jì)與實(shí)現(xiàn)4.1 簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)結(jié)構(gòu)設(shè)計(jì)4.1.1 簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)的結(jié)構(gòu)本系統(tǒng)主要是由主控端與被控端兩部分組成的。主控端為用戶(hù)提控進(jìn)行遠(yuǎn)程控制的操作平臺(tái),負(fù)責(zé)發(fā)送命令給被控端和接收被控端的信息。被控端是用戶(hù)控制的目標(biāo),接收到主控端命令后,被控端會(huì)分析數(shù)據(jù)然后調(diào)用函數(shù)執(zhí)行命令。兩個(gè)部分是通過(guò)Winsock控件建立連接的,是基于TCP協(xié)議的點(diǎn)對(duì)點(diǎn)的通信。因?yàn)锳PI函數(shù)的關(guān)系,用戶(hù)不需要自己來(lái)設(shè)置端口,大大的方便了用戶(hù)的操作。系統(tǒng)框架如圖2所示。圖2系統(tǒng)框架圖4.1.2 簡(jiǎn)單遠(yuǎn)程控制系統(tǒng)的功能模塊發(fā)送文字消息遠(yuǎn)程控制系統(tǒng)主控端被控端設(shè)置主控端獲
34、取被控端消息被控端系統(tǒng)控制發(fā)送連接請(qǐng)求獲取命令并執(zhí)行控制被控端桌面圖3 系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)的操作功能主要分為四大模塊如圖所示。分別是:1、獲取被控計(jì)算機(jī)系統(tǒng)信息模塊:主控電腦獲得被控電腦的主要信息,主要包括可用的實(shí)際內(nèi)存大小、系統(tǒng)版本號(hào)、處理器序號(hào)、鼠標(biāo)的按鈕個(gè)數(shù)和盤(pán)的文件系統(tǒng)類(lèi)型等信息。、系統(tǒng)控制模塊:實(shí)現(xiàn)被控端計(jì)算機(jī)關(guān)機(jī)、注銷(xiāo)、重起功能。、發(fā)送消息模塊:主控端與被控端進(jìn)行簡(jiǎn)單的文字對(duì)話(huà)。、界面控制模塊:隱藏或顯示被控端開(kāi)始按鈕、任務(wù)欄與桌面圖像。4.2 系統(tǒng)功能的實(shí)現(xiàn)4.2.1 主控端界面4.2.2 功能實(shí)現(xiàn)過(guò)程4.2.3 系統(tǒng)控制功能的實(shí)現(xiàn)本系統(tǒng)在此模塊中設(shè)計(jì)為當(dāng)主控端把控制指令(關(guān)機(jī)、
35、重起、注銷(xiāo))數(shù)據(jù)發(fā)送給被控端后,被控端接收到這些指令,則進(jìn)行相應(yīng)的操作。一般說(shuō)來(lái)如果被控端收到這些指令則調(diào)用相應(yīng)的API函數(shù)。在使用界面上運(yùn)用了選項(xiàng)按鈕控件OPTIONBUTTON,在主控端程序中使用了程序控制結(jié)構(gòu)語(yǔ)句IfThenElse,應(yīng)用程序中可以經(jīng)過(guò)條件表達(dá)式的測(cè)試,并根據(jù)測(cè)試結(jié)果為T(mén)RUE和FALSE來(lái)決定程序運(yùn)行的方向,只有當(dāng)滿(mǎn)足TURE條件時(shí)才會(huì)進(jìn)行下個(gè)程序流程,否則執(zhí)行另一個(gè)程序流程。例如當(dāng)主控端測(cè)試結(jié)果為REBOOT時(shí),主控端向被控端發(fā)送參數(shù)REBOOT,被控端根據(jù)參數(shù)調(diào)用函數(shù)Call shell并觸發(fā)事件過(guò)程重起被控端計(jì)算機(jī)。這里調(diào)用的Shell函數(shù)是VB中的內(nèi)部函數(shù),它負(fù)
36、責(zé)執(zhí)行一個(gè)可執(zhí)行文件,返回一個(gè)Variant(Double),如果成功的話(huà),代表這個(gè)程序的進(jìn)程ID,若不成功,則會(huì)返回0。Shell的語(yǔ)法:Shell(PathName,WindowStyle)。主要代碼如下:Private Sub Command1_Click()If Option1(0).Value = True ThenElseIf Option1(1).Value = True ThenElseEnd IfEnd Sub在被控端的聲明sckclient_DataArrival()函數(shù)部分寫(xiě)入如下代碼:Case "CLOSECU" '關(guān)機(jī)Call Shell(
37、"shutdown -s -f")Case "REBOOT" '重起Call Shell("shutdown -r -f")Case "LogOff" '注銷(xiāo)Call Shell("shutdown -l -f") EndEnd SelectEnd Sub實(shí)現(xiàn)系統(tǒng)控制如圖5所示:圖 5 系統(tǒng)控制界面與“系統(tǒng)控制”相同,主控端在單擊別的操作按鈕時(shí)也執(zhí)行相應(yīng)的函數(shù),發(fā)送相應(yīng)的命令,被控端收到數(shù)據(jù)后,首先解包獲取命令代碼,再根據(jù)命令調(diào)圖6 功能執(zhí)行流程圖用對(duì)應(yīng)的操作函數(shù),執(zhí)行相關(guān)語(yǔ)句產(chǎn)
38、生相應(yīng)效果。大致過(guò)程如圖6所示。4.2.4 發(fā)送消息功能的實(shí)現(xiàn)本系統(tǒng)在發(fā)送消息模塊中使用MSGBOX控件,調(diào)用SendMessage函數(shù)來(lái)實(shí)現(xiàn)文字聊天功能。當(dāng)主控端在發(fā)送信息窗體中輸入信息,點(diǎn)擊Command1控件按鈕時(shí),觸發(fā)Command1_Click()事件過(guò)程,發(fā)送參數(shù)SENDIF給被控端,當(dāng)被控端收到參數(shù)后觸發(fā)被控端的Command1_Click()事件并彈出消息文本對(duì)話(huà)框顯示由主控端發(fā)送過(guò)來(lái)的信息Text1.Text。其主要代碼如下:Private Sub Command1_Click()主控端End SubPrivate Sub Command1_Click()被控端End Sub
39、實(shí)現(xiàn)效果圖如7所示圖7主控端向被控端發(fā)送消息的效果圖4.2.5 界面控制功能的實(shí)現(xiàn)本系統(tǒng)在此模塊中調(diào)用Findwindow 和Showwindow 等函數(shù),實(shí)現(xiàn)對(duì)被控圖8 界面控制窗體端的桌面圖標(biāo)、開(kāi)始按鈕、任務(wù)欄的隱藏和顯示的功能。在主控端屏幕控制功能窗體中添加七個(gè)Command按鈕,分別是隱藏開(kāi)始按鈕、顯示開(kāi)始按鈕、隱藏任務(wù)欄、顯示任務(wù)欄、隱藏桌面、顯示桌面和退出(圖8)。用戶(hù)點(diǎn)擊各個(gè)功能按鈕時(shí)發(fā)送命令函數(shù)給被控端,實(shí)現(xiàn)屏幕控制功能。命令代碼如表3。表3功能按鈕與命令按鈕名稱(chēng)命令函數(shù)隱藏開(kāi)始按鈕mainform.scksever.SendData "HIDSTAR"顯示
40、開(kāi)始按鈕mainform.scksever.SendData "APPSTAR"隱藏任務(wù)欄mainform.scksever.SendData "HIDTASK"顯示任務(wù)欄mainform.scksever.SendData "NOTHIDT"隱藏桌面mainform.scksever.SendData "HIDDISK"顯示桌面mainform.scksever.SendData "NOHIDDI"退出Unload Me在被控端connectform窗體中添加函數(shù)代碼,利用選擇函數(shù)激發(fā)事件,當(dāng)
41、被控端收到主控端命令后,便產(chǎn)生相應(yīng)的效果。表4中是被控端命令代碼和相應(yīng)的操作函數(shù)。表4命令代碼與函數(shù)命令代碼操作函數(shù)HIDSTARShowWindow wnd, SW_HIDEAPPSTARShowWindow wnd, SW_SHOWHIDTASKShowWindow wnd, SW_HIDENOTHIDTShowWindow wnd, SW_SHOWHIDDISKShowWindow wnd, SW_HIDENOHIDDIShowWindow wnd, SW_SHOW被控端與主控端建立連接后,主控端用戶(hù)鼠標(biāo)單擊“界面控制”按鈕,系統(tǒng)彈出界面控制窗體(圖8)。當(dāng)用戶(hù)點(diǎn)擊隱藏開(kāi)始按鈕時(shí),被控端
42、即發(fā)送命令"HIDSTAR"給被控端。被控端接收到命令后,執(zhí)行命令隱藏開(kāi)始按鈕。圖9 showwindow函數(shù)主要參數(shù)在這里主要調(diào)用了API中的ShowWindow函數(shù)來(lái)實(shí)現(xiàn)被控端界面的隱藏和顯示功能。 主要參數(shù)如圖9所示。因?yàn)槊畲a的格式基本相同下面進(jìn)行以“隱藏開(kāi)始按鈕”為例說(shuō)明,具體命令如表3與表4所示?!?”后為代碼的注釋。寫(xiě)入被控端的代碼如下:Private Sub Command1_Click()End Sub/定義Command1按鈕,當(dāng)用戶(hù)點(diǎn)擊按鈕時(shí)發(fā)送隱藏開(kāi)始命令"HIDSTAR"給被控端。寫(xiě)入被控端的代碼如下:Case "H
43、IDSTAR" /接收HIDSTAR命令后,激發(fā)隱藏開(kāi)始按鈕事件 wnd = FindWindowEx(wnd, 0, sStartButton, vbNullString) /利用FindWindow函數(shù)獲得窗口句柄 ShowWindow wnd, SW_HIDE /利用ShowWindow函數(shù)實(shí)現(xiàn)隱藏開(kāi)始按鈕功能點(diǎn)擊不同的按鈕系統(tǒng)會(huì)發(fā)送相應(yīng)的命令函數(shù),顯示功能是相對(duì)于隱藏功能而言的,只有使用了隱藏功能后才可以使用顯示功能將畫(huà)面顯示出來(lái)。單方面的點(diǎn)擊顯示功能,被控端窗口顯示毫無(wú)變化。4.3 部分被控端程序功能的實(shí)現(xiàn)4.3.1 被控端的連接被控端程序在與主控端程序建立連接時(shí)首先設(shè)置R
44、emotehost屬性,指定運(yùn)行主控端程序的主機(jī)名,設(shè)置RemotePort 屬性,指定主控端程序的監(jiān)聽(tīng)端口。然后在主控端設(shè)置成功的前提下向主控端發(fā)送連接請(qǐng)求。主控端接收并通過(guò)被控端的請(qǐng)求,建立連接,就可以用SendData方法發(fā)送數(shù)據(jù)了。當(dāng)被控端程序接收到數(shù)據(jù)時(shí),發(fā)生DataArrival事件,參數(shù)BytesTotal包含接收到的數(shù)據(jù)字節(jié)數(shù)。該事件中,可以用GetData方法接收數(shù)據(jù),如果接收到Close事件,則用Close方法關(guān)閉連接。被控端工作流程如圖10所示。N Y 請(qǐng)求連接建立連接有用戶(hù)控制?獲取并發(fā)送指令結(jié)束開(kāi)始圖10 被控端工作流程圖4.3.2 獲取被控端信息功能的實(shí)現(xiàn)前面幾個(gè)功
45、能模塊是和周睿同學(xué)分工合作開(kāi)發(fā)的,本人主要是主控端的開(kāi)發(fā),周睿同學(xué)負(fù)責(zé)被控端部分的開(kāi)發(fā),而獲取被控端信息功能是作者獨(dú)自完成的。本系統(tǒng)在此模塊中通過(guò)使用SYSINFO控件的使用檢測(cè)系統(tǒng)事件,例如被控端計(jì)算機(jī)的系統(tǒng)版本號(hào)、系統(tǒng)類(lèi)型、內(nèi)存狀況、系統(tǒng)盤(pán)信息等。將模塊代碼寫(xiě)如SYSINFO()函數(shù)中后,當(dāng)主控端Command1按鈕被按下后,觸發(fā)CLICK事件,主控端發(fā)送參數(shù)GETSYST到被控端后,被控端以GETSYST作為套接字字符串,采用DATAARRIRAL事件,當(dāng)獲得調(diào)用中的全部數(shù)據(jù)GETDATA事件被觸發(fā),向主控端發(fā)送被控端系統(tǒng)信息。在這里調(diào)用了以下API函數(shù)來(lái)實(shí)現(xiàn)系統(tǒng)功能如表5所示。表5 A
46、PI函數(shù)與功能API函數(shù)名實(shí)現(xiàn)功能GetComputerName獲得計(jì)算機(jī)名稱(chēng)GlobalMemoryStatus獲得當(dāng)前可用的物理和虛擬內(nèi)存信息GetWindowsDirectory獲得WINDOWS系統(tǒng)路徑GetVersionEx檢索windows版本信息GetVolumeInformation獲得分區(qū)信息GetLogicalDriveStrings獲得邏輯驅(qū)動(dòng)器盤(pán)符其具體代碼如下:Public Function sysinfo() As StringDim sys As SYSTEM_INFO Dim m As MEMORYSTATUS '內(nèi)存狀態(tài)Dim v As OSVERSI
47、ONINFO '版本信息Dim vname$, fsname$, strsave$, tmp$, tcd As String * 30Dim serial As Long '序列號(hào)GlobalMemoryStatus m '內(nèi)存情況v.dwOSVersionInfoSize = Len(v) '版本信息GetVersionEx vvname = Space(255)fsname = Space(255)GetVolumeInformation "c:", vname, 255, serial, 0, 0, fsname, 255 '獲
48、得容量'vname = stripnulls(vname)'fsname = stripnulls(fsname)tmp = Space(255)GetLogicalDriveStrings 255, tmp '獲得所有驅(qū)動(dòng)器信息For a = Asc("a") To Asc("z")If InStr(tmp, Chr(a) & ":") Thenstrsave = strave & IIf(stsave > "", ",", ""
49、;) & Chr(a)End IfNext aGetSystemInfo sys '獲得CPU信息'返回信息s = "實(shí)際內(nèi)存大小為:" & m.dwTotalPhys 1024 2 & "MB"s = s & vbCrLf & "可用的實(shí)際內(nèi)存大小為:" & m.dwAvailPhys 1024 2 & "MB"s = s & vbCrLf & "虛擬內(nèi)存大小為:" & m.dwTotalVirtu
50、al 1024 2 & "MB"s = s & vbCrLf & "可用虛擬內(nèi)存大小為:" & m.dwAvailVirtual 1024 2 & "MB"s = s & vbCrLf & "以用內(nèi)存大小為:" & (m.dwTotalPhys - m.dwAvailPhys) 1024 2 & "MB"s = s & vbCrLf & vbCrLf & "系統(tǒng)版本號(hào)為:" &am
51、p; v.dwMajorVersion & "." & v.dwMinorVersions = s & vbCrLf & "系統(tǒng)類(lèi)型 :" & IIf(v.dwPlatformId = 1, "95/98/me", "NT/2000")s = s & vbCrLf & vbCrLf & "處理器類(lèi)型:" & sys.dwProcessorTypes = s & vbCrLf & "處理器序號(hào):" & sys.dwNumberOfProcessorss = s & vbCrLf & vbCrLf & "鼠標(biāo)的
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版新員工試崗期職業(yè)發(fā)展規(guī)劃與實(shí)施合同3篇
- 應(yīng)急預(yù)案與突發(fā)事件類(lèi)型
- 電子行業(yè)產(chǎn)品維修培訓(xùn)總結(jié)
- 建筑與市政工程質(zhì)量安全巡查的背景
- 托育防恐防暴安全教育
- 交通運(yùn)輸行業(yè)促銷(xiāo)策略評(píng)估
- 二零二五版外貿(mào)實(shí)習(xí)實(shí)訓(xùn)基地建設(shè)合同3篇
- 二零二五年度環(huán)保設(shè)備委托托管合作協(xié)議3篇
- 《學(xué)校心理輔導(dǎo)》課件
- 二零二五年度居間服務(wù)合同范本6篇
- 新能源充電站運(yùn)營(yíng)手冊(cè)
- 2024年蘭州新區(qū)實(shí)正鑫熱電有限公司招聘筆試沖刺題(帶答案解析)
- 血透室護(hù)士長(zhǎng)述職
- (正式版)JTT 1218.4-2024 城市軌道交通運(yùn)營(yíng)設(shè)備維修與更新技術(shù)規(guī)范 第4部分:軌道
- 2024年漢中市行政事業(yè)單位國(guó)有資產(chǎn)管理委員會(huì)辦公室四級(jí)主任科員公務(wù)員招錄1人《行政職業(yè)能力測(cè)驗(yàn)》模擬試卷(答案詳解版)
- 客車(chē)交通安全培訓(xùn)課件
- 藝術(shù)培訓(xùn)校長(zhǎng)述職報(bào)告
- ICU新進(jìn)人員入科培訓(xùn)-ICU常規(guī)監(jiān)護(hù)與治療課件
- 選擇性必修一 期末綜合測(cè)試(二)(解析版)2021-2022學(xué)年人教版(2019)高二數(shù)學(xué)選修一
- 學(xué)校制度改進(jìn)
- 各行業(yè)智能客服占比分析報(bào)告
評(píng)論
0/150
提交評(píng)論