畢業(yè)設(shè)計(jì)-計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)_第1頁(yè)
畢業(yè)設(shè)計(jì)-計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)_第2頁(yè)
畢業(yè)設(shè)計(jì)-計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)_第3頁(yè)
畢業(yè)設(shè)計(jì)-計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)_第4頁(yè)
畢業(yè)設(shè)計(jì)-計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Southwestuniversityofscienceandtechnology本科畢業(yè)設(shè)計(jì)〔論文〕學(xué)院名稱專業(yè)名稱學(xué)生姓名學(xué)號(hào)指導(dǎo)教師二〇一一年六月計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)——計(jì)算機(jī)信息獲取、控制技術(shù)研究及駐留程序設(shè)計(jì)摘要:隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷開(kāi)展,網(wǎng)絡(luò)平安問(wèn)題變得越來(lái)越受人們關(guān)注。網(wǎng)絡(luò)平安包括攻擊和防范兩大范疇。以往我們大多數(shù)以防范為主,如加密、防火墻等。但網(wǎng)絡(luò)攻擊技術(shù)與網(wǎng)絡(luò)防范技術(shù)是密不可分的,了解網(wǎng)絡(luò)攻擊的方法和技術(shù)對(duì)于維護(hù)網(wǎng)絡(luò)平安有著重要的意義。計(jì)算機(jī)遠(yuǎn)程控制程序能夠使操作者通過(guò)基于Internet網(wǎng)絡(luò)對(duì)遠(yuǎn)程主機(jī)進(jìn)行控制,從而實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)遠(yuǎn)程計(jì)算機(jī)得信息獲取、控制、記錄等功能。隨著Internet的廣泛應(yīng)用,遠(yuǎn)程控制系統(tǒng)能夠?qū)崿F(xiàn)很多的功能,其中軍事上的應(yīng)用尤為重要。本文以Windows系統(tǒng)為根底,使用MicrosoftVisual為主要開(kāi)發(fā)工具,使用WindowsAPI編程,開(kāi)發(fā)遠(yuǎn)程控制程序,主要的任務(wù)是關(guān)于駐留端程序的設(shè)計(jì),實(shí)現(xiàn)了對(duì)遠(yuǎn)程計(jì)算機(jī)的根本控制,信息獲取。關(guān)鍵詞:計(jì)算機(jī)信息獲?。贿h(yuǎn)程控制;計(jì)算機(jī)木馬ComputerRemoteControlProgramming–ComputerAccessToInformation,Control,ResearchAndResidentProgrammingAbstract:.Withthecontinuousdevelopmentofcomputernetworktechnology,networksecurityissuesbecomemoreandmoreattention.Networksecurity,includingattacksandpreventthetwomajorareas.Thepast,mostofustopreventthemain,suchasencryptionandfirewalls.However,technologyandnetworkattacksagainsttechnologyareinextricablylinked,understandingofnetworkattackmethodsandtechniquesformaintainingnetworksecurityisofimportantsignificance.ComputerremotecontrolprogramthatallowstheoperatortoInternet-basednetworktocontroltheremotehost,inordertoachievearemotecomputeronthenetworkhaveaccesstoinformation,control,recordingandotherfunctions.WiththeextensiveapplicationoftheInternet,Remotecontrolsystemcanachievealotoffeatures,militaryapplicationswhichisparticularlyimportant.Inthispaper,Windows-basedsystem,usingMicrosoftVisualC++6.0asthemaindevelopmenttool,usingtheWindowsAPI,Themaintaskistodesigntheprogramontheresidentsidedevelopmentofremotecontrolprocedures,thebasiccontroloftheremotecomputer,accesstoinformation.Keywords:Computerinformationaccess,RemoteControl,ComputerTrojan目錄第1章前言51.1概述51.2遠(yuǎn)程控制的根本原理61.2.1遠(yuǎn)程控制軟件的根本模式71.2.2遠(yuǎn)程控制常用軟件71.3論文選題及研究方案81.4主要工作量91.5研究?jī)?nèi)容101.5.1主要研究?jī)?nèi)容101.5.2主要技術(shù)要求10第2章遠(yuǎn)程控制程序的設(shè)計(jì)思路112.1關(guān)機(jī)、重啟子程序112.2讀取計(jì)算機(jī)信息子程序122.3增加帳戶子程序132.4截圖子程序132.5鍵盤記錄子程序152.6主程序調(diào)用152.7本章小結(jié)16第3章遠(yuǎn)程控制程序的設(shè)計(jì)173.1子程序設(shè)計(jì)173.1.1計(jì)算機(jī)關(guān)機(jī)、重啟程序設(shè)計(jì)173.1.2讀取計(jì)算機(jī)信息程序設(shè)計(jì)173.1.3增加賬戶程序設(shè)計(jì)203.1.4截圖程序設(shè)計(jì)243.1.5鍵盤記錄程序設(shè)計(jì)263.2主程序設(shè)計(jì)27結(jié)論29致謝30參考文獻(xiàn)31第1章前言1.1概述隨著計(jì)算機(jī)網(wǎng)絡(luò)的迅速普及,人類社會(huì)已經(jīng)越來(lái)越離不開(kāi)網(wǎng)絡(luò),網(wǎng)絡(luò)使人類社會(huì)淡化了國(guó)家的限制。各國(guó)社會(huì)的經(jīng)濟(jì)、政治、文化等各個(gè)方面都開(kāi)始倚重于網(wǎng)絡(luò)方便迅速的信息傳遞方式。網(wǎng)絡(luò)有著巨大的資源與強(qiáng)大的計(jì)算能力,這些也屬于一種能量,其威力無(wú)法估量。網(wǎng)絡(luò)當(dāng)初建立時(shí)是基于各個(gè)節(jié)點(diǎn)相互信任的前提,但是事實(shí)上,使用網(wǎng)絡(luò)節(jié)點(diǎn)的人相互之間并不是可以相互信任的。人類社會(huì)中存在窺探者、破壞者、盜竊者,網(wǎng)絡(luò)上也有,而且在網(wǎng)絡(luò)上做這些事情要更容易。網(wǎng)絡(luò)蘊(yùn)涵著強(qiáng)大的力量,這些力量又被不同的人或組織控制,于是有了力量沖突,這種力量的沖突是人類根本社會(huì)沖突在網(wǎng)絡(luò)上的延伸,具有相同的性質(zhì)。我們可以稱這種沖突為網(wǎng)絡(luò)戰(zhàn)爭(zhēng),因?yàn)樗_實(shí)和戰(zhàn)爭(zhēng)有很多共同點(diǎn)。信息社會(huì)中,信息己成為人類珍貴的資源。近年來(lái)Internet正以驚人的速度在全球開(kāi)展,Internet技術(shù)己經(jīng)廣泛滲透到各個(gè)領(lǐng)域。信息是戰(zhàn)略資源,信息是決策之源,是控制戰(zhàn)場(chǎng)的靈魂,信息決定火力和機(jī)動(dòng)力。信息可以極大擴(kuò)充軍隊(duì)智力和神經(jīng)〔指揮〕系統(tǒng)的協(xié)調(diào)性,軍事信息化是一次全面深層次的革命。近年來(lái),一些軍事強(qiáng)國(guó)為了在信息化戰(zhàn)場(chǎng)上奪取“制網(wǎng)權(quán)”優(yōu)勢(shì),大勝采用網(wǎng)絡(luò)對(duì)抗技術(shù),實(shí)施各種攻防手段。海灣戰(zhàn)爭(zhēng)中,美軍首次把網(wǎng)絡(luò)攻擊手段應(yīng)用于實(shí)戰(zhàn)。戰(zhàn)前,美軍就在伊拉克進(jìn)口的一批計(jì)算機(jī)散件中預(yù)置了帶病毒芯片。戰(zhàn)爭(zhēng)開(kāi)始不久。伊拉克移個(gè)防空指揮網(wǎng)絡(luò)即遭受病毒感染,組織指揮陷入混亂。幾乎喪失了防空作戰(zhàn)能力。俄軍在強(qiáng)化網(wǎng)絡(luò)戰(zhàn)中十分重視“先機(jī)制敵”和實(shí)施主動(dòng)性攻擊。據(jù)悉,目前俄專家正加緊研制“遠(yuǎn)即離無(wú)線注人病毒武器”,對(duì)戰(zhàn)略指揮控制系統(tǒng)產(chǎn)生直接威脅。這都是應(yīng)用對(duì)抗技術(shù)的表達(dá),但日前的網(wǎng)絡(luò)攻防并沒(méi)有充分利用好。因而我們勢(shì)必深人研究網(wǎng)絡(luò)戰(zhàn)中的對(duì)抗技術(shù),使其分類系統(tǒng)化、明朗化才能講求實(shí)用。因此我國(guó)要從戰(zhàn)略高度重視信息戰(zhàn)的問(wèn)題,必須認(rèn)識(shí)到未來(lái)戰(zhàn)爭(zhēng)將主要是信息戰(zhàn)。信息戰(zhàn)將以覆蓋全球的計(jì)算機(jī)網(wǎng)絡(luò)為主戰(zhàn)場(chǎng),以攻擊對(duì)方的信息系統(tǒng)為主要手段,運(yùn)用高精尖的計(jì)算機(jī)技術(shù),不僅破壞軍事指揮和武器控制系統(tǒng),而且會(huì)使其金融、交通、商業(yè)、醫(yī)療、電力等涉及國(guó)民經(jīng)濟(jì)命脈的諸多系統(tǒng)遭到破壞,從而不費(fèi)一槍一炮到達(dá)攻城奪地的目的。網(wǎng)絡(luò)戰(zhàn)必將成為未來(lái)信息戰(zhàn)場(chǎng)新的作戰(zhàn)樣式。首先,網(wǎng)絡(luò)技術(shù)的廣泛應(yīng)用,使得網(wǎng)絡(luò)成為新的爭(zhēng)奪空間。在信息時(shí)代里,網(wǎng)絡(luò)正在成為聯(lián)結(jié)個(gè)人和社會(huì),現(xiàn)在和未來(lái)的紐帶,各種各樣的計(jì)算機(jī)網(wǎng)絡(luò)都將成為一個(gè)國(guó)家的戰(zhàn)略資源和戰(zhàn)略命脈,一旦重要的網(wǎng)絡(luò)陷入癱瘓,整個(gè)國(guó)家平安就面臨著崩潰的危險(xiǎn),使“制網(wǎng)絡(luò)權(quán)”的爭(zhēng)奪與對(duì)抗不可防止。同時(shí),隨著網(wǎng)絡(luò)技術(shù)在軍事領(lǐng)域的快速開(kāi)展,軍隊(duì)對(duì)計(jì)算機(jī)網(wǎng)絡(luò)的依賴越來(lái)越大,網(wǎng)絡(luò)與作戰(zhàn)的聯(lián)系也愈來(lái)愈緊密,網(wǎng)絡(luò)成為新的戰(zhàn)場(chǎng)空間。其次,網(wǎng)絡(luò)的特殊戰(zhàn)略作用,促使網(wǎng)絡(luò)對(duì)抗與爭(zhēng)奪向網(wǎng)絡(luò)戰(zhàn)方向開(kāi)展。和常規(guī)作戰(zhàn)中選擇打擊對(duì)象一樣,網(wǎng)絡(luò)攻擊也是把對(duì)敵方的戰(zhàn)略目標(biāo)作為首要進(jìn)攻對(duì)象。能否有效地摧毀敵重要網(wǎng)絡(luò)系統(tǒng),以便迅速達(dá)成一定的戰(zhàn)略目的,就成為敵對(duì)雙方進(jìn)行全面網(wǎng)絡(luò)爭(zhēng)奪和對(duì)抗的焦點(diǎn),這種對(duì)抗與爭(zhēng)奪必然促使網(wǎng)絡(luò)戰(zhàn)成為新的作戰(zhàn)樣式登上戰(zhàn)爭(zhēng)舞臺(tái)。木馬技術(shù)就是一種軍民兩用的網(wǎng)絡(luò)攻擊技術(shù),由于木馬本身的技術(shù)優(yōu)勢(shì)因而得到了廣泛的應(yīng)用,利用木馬技術(shù)滲透到敵方系統(tǒng)內(nèi)部,建立一個(gè)穩(wěn)固的內(nèi)部攻擊點(diǎn),為以后的攻擊提供一個(gè)暢通無(wú)阻的平安通道,再由里及外,內(nèi)外結(jié)合,往往可以收到更好的攻擊效果。綜上所述,網(wǎng)絡(luò)戰(zhàn)引起很多國(guó)家的普遍重視,網(wǎng)絡(luò)攻擊技術(shù)也相應(yīng)的得到了長(zhǎng)足的開(kāi)展,目前,存在多種網(wǎng)絡(luò)攻擊技術(shù),木馬技術(shù)就是其中之一,研究開(kāi)發(fā)先進(jìn)的木馬攻擊技術(shù)使得在將來(lái)的網(wǎng)絡(luò)戰(zhàn)中搶占先機(jī),立于不敗之地具有重要的意義。木馬理論上基于效勞器/客戶端網(wǎng)絡(luò)模型,但是這種模型不利于控制系統(tǒng)的隱藏。本文構(gòu)建了一個(gè)強(qiáng)大的基于P2P網(wǎng)絡(luò)模型的木馬系統(tǒng),它在Internet上通過(guò)控制系統(tǒng)和受控計(jì)算機(jī)建立一個(gè)完整的P2P網(wǎng)絡(luò),通過(guò)這個(gè)網(wǎng)絡(luò)可以獲取網(wǎng)絡(luò)的計(jì)算資源,并且可以對(duì)這些資源進(jìn)行隱蔽控制,從而可以有效完成各種特殊的任務(wù)。而木馬最近本的功能就是計(jì)算機(jī)遠(yuǎn)程控制,正式我們需要研究的方向。1.2遠(yuǎn)程控制的根本原理遠(yuǎn)程控制是指在計(jì)算機(jī)網(wǎng)絡(luò)上由一臺(tái)主機(jī)(主控端)遠(yuǎn)距離控制另一臺(tái)主機(jī)(駐留端)的技術(shù)。當(dāng)操作者使用主控端主機(jī)控制被控端主機(jī)時(shí),就如同坐在被控端主機(jī)的屏幕前操作一樣,可以啟動(dòng)被控端主機(jī)中的應(yīng)用程序,可以使用文件資料,甚至可以利用被控端主機(jī)的各種外部設(shè)備。但是值得注意的是:主控端所做的一切控制操作如翻開(kāi)應(yīng)用程序、上網(wǎng)瀏覽以及下載等都是在被控主機(jī)的計(jì)算下完成的;主控端主機(jī)只是將鍵盤和鼠標(biāo)的指令傳送給遠(yuǎn)程被控主機(jī)。網(wǎng)絡(luò)中的遠(yuǎn)程控制技術(shù)早于DOS時(shí)代就已提出,只不過(guò)當(dāng)時(shí)由于網(wǎng)絡(luò)應(yīng)用范圍不廣,網(wǎng)絡(luò)用戶在這方面沒(méi)有較大的要求,因此這項(xiàng)技術(shù)沒(méi)有得到較大的開(kāi)展。但是,隨著計(jì)算機(jī)網(wǎng)絡(luò)的廣泛應(yīng)用以及用戶在應(yīng)用中的需要,遠(yuǎn)程操作及控制技術(shù)越來(lái)越引起人們的關(guān)注。遠(yuǎn)程控制一般支持的網(wǎng)絡(luò)方式:LAN、WAN、撥號(hào)方式、互聯(lián)網(wǎng)方式。1.2.1遠(yuǎn)程控制軟件的根本模式遠(yuǎn)程控制一般支持局域網(wǎng)、廣域網(wǎng)、無(wú)線網(wǎng)、撥號(hào)方式、寬帶接入等方式,還可以支持直接連接,即通過(guò)串口、并口、紅外端口來(lái)對(duì)遠(yuǎn)程主機(jī)進(jìn)行控制。傳統(tǒng)的遠(yuǎn)程控制軟件一般使用TCP/IP、NET—BEUI、NETBIOS、IPX/SPX等協(xié)議來(lái)實(shí)現(xiàn)遠(yuǎn)程控制,也可以通過(guò)B/S模式或?yàn)g覽器/中間件/效勞器結(jié)構(gòu),即Web頁(yè)面以Java技術(shù)來(lái)控制遠(yuǎn)程電腦,從而到達(dá)遠(yuǎn)程控制不同操作系統(tǒng)的目的。遠(yuǎn)程控制實(shí)現(xiàn)機(jī)制:客戶端將鍵盤和鼠標(biāo)的操作信息實(shí)時(shí)傳送給效勞器端,由效勞器端軟件仿真為本地的鍵盤和鼠標(biāo)操作,同時(shí)實(shí)時(shí)捕捉效勞器端電腦的屏幕畫面,通過(guò)網(wǎng)絡(luò)回傳到客戶端。遠(yuǎn)程控制軟件通常由兩局部組成:一局部是客戶端(控制端)程序Client,另一局部是駐留端(受控端)程序Server,建成C/S模式。使用前需要在控制端運(yùn)行客戶端程序,在受控端運(yùn)行效勞器程序。然后由控制端向受控端發(fā)出信號(hào),建立一個(gè)特殊的遠(yuǎn)程效勞。再通過(guò)這個(gè)效勞,使用各種遠(yuǎn)程控制功能發(fā)送遠(yuǎn)程控制命令,控制受控端電腦中的各種應(yīng)用程序運(yùn)行,這種遠(yuǎn)程控制方式稱為基于遠(yuǎn)程效勞的遠(yuǎn)程控制。1.2.2遠(yuǎn)程控制常用軟件各類遠(yuǎn)程控制軟件種類繁多,可以運(yùn)行在不同的工作平臺(tái),在屏幕截取,鼠標(biāo)鍵盤控制上各有特色.常用的控制軟件有如下幾種:PCAnywhere:是點(diǎn)對(duì)點(diǎn)通信軟件,可以遠(yuǎn)程監(jiān)控、管理、調(diào)試,有卓越的自我保護(hù)功能和加密工具,功能強(qiáng)大,是遠(yuǎn)程控制軟件的首選,適合于技術(shù)支持和企業(yè)內(nèi)部部署。RemotelyAnywhere:基于Web客戶端連接,操作簡(jiǎn)單,擁有用戶所需要的全部網(wǎng)絡(luò)管理工具,適于效勞器管理。冰河:可支持局域網(wǎng)/Modem上網(wǎng)/寬帶上網(wǎng)等多種方式,功能強(qiáng)大,容易被黑客利用,被許多殺毒軟件列為查殺對(duì)象。QuiekIP:客戶機(jī)可同時(shí)控制多個(gè)效勞器,反之亦然。適用于多種場(chǎng)合。VNC:免費(fèi)跨平臺(tái)的開(kāi)放源碼軟件。在Windows環(huán)境下,遠(yuǎn)程控制有以下2種實(shí)現(xiàn)方法:1)WindowsXP遠(yuǎn)程控制的實(shí)現(xiàn)“遠(yuǎn)程協(xié)助”和“遠(yuǎn)程桌面”是WindowsXP系統(tǒng)提供的遠(yuǎn)程控制的方法。使用“遠(yuǎn)程協(xié)助”進(jìn)行遠(yuǎn)程控制必須由主控雙方協(xié)同才能夠進(jìn)行,通過(guò)MSNMessenger向聯(lián)系人發(fā)出協(xié)助要求,在獲得對(duì)方同意后,即可進(jìn)行遠(yuǎn)程協(xié)助。2)Windows2000Server遠(yuǎn)程控制的實(shí)現(xiàn)在效勞器上安裝配置好與客戶端連接所需的協(xié)議,如IPX、TCP/IP、NETBEUI等,在安裝“路由和遠(yuǎn)程訪問(wèn)”效勞后,即可以配置運(yùn)行Windows2000Server的遠(yuǎn)程訪問(wèn)效勞器。Windows2000Server提供了撥號(hào)網(wǎng)絡(luò)和VPN兩種方式的遠(yuǎn)程訪問(wèn)。1.3論文選題及研究方案本次論文的主要要求就是計(jì)算機(jī)遠(yuǎn)程控制程序設(shè)計(jì)——駐留端程序設(shè)計(jì),即C/S中的Server端程序設(shè)計(jì),要求實(shí)現(xiàn)一定的功能。如:計(jì)算機(jī)的關(guān)機(jī)、重啟,獲取計(jì)算機(jī)信息,增加帳戶,截圖、鍵盤記錄等功能。本遠(yuǎn)程控制程序是采用模塊化設(shè)計(jì)的方法,將整個(gè)程序劃分為主控制程序、重啟控制子程序、關(guān)機(jī)控制子程序、計(jì)算機(jī)信息獲取子程序、增加帳戶子程序、截圖子程序、鍵盤記錄子程序等模塊,通過(guò)這樣的劃分,我們可以清晰的構(gòu)建出程序的流程圖,可以方便程序的分塊編寫。本次設(shè)計(jì)主要是編寫一個(gè)程序,其主要功能是通過(guò)接收客戶端的命令,實(shí)現(xiàn)控制,只需要編寫關(guān)于駐留端的程序,實(shí)現(xiàn)控制即可,不用設(shè)計(jì)關(guān)于控制端的程序設(shè)計(jì)以及網(wǎng)絡(luò)的對(duì)話,所以只需要構(gòu)建出關(guān)于程序的控制的局部。所以本次設(shè)計(jì)首要任務(wù)就是使用子程序?qū)崿F(xiàn)要求的控制功能,如關(guān)機(jī),重啟等,分別用子程序?qū)崿F(xiàn);其次才是編寫一個(gè)主程序?qū)崿F(xiàn)調(diào)用,構(gòu)成一個(gè)完整的遠(yuǎn)程控制程序;由于不需要網(wǎng)絡(luò)通訊,就不需要使用遠(yuǎn)程命令代碼控制,僅僅使用一個(gè)命令行在本機(jī)上實(shí)現(xiàn)控制功能即可。本次設(shè)計(jì)是使用進(jìn)行設(shè)計(jì),在中有專門基于Windows控制的WindowsAPI程序,可以簡(jiǎn)單的實(shí)現(xiàn)功能,所以在本次設(shè)計(jì)中主要使用的就是WindowsAPI編程。1.4主要工作量 本次設(shè)計(jì)根本參照上述的研究方案進(jìn)行,其具體工作量的統(tǒng)計(jì)如表1-1所示。學(xué)習(xí)編寫內(nèi)容工作量〔h〕目的查閱相關(guān)文獻(xiàn)、資料240熟悉VC編程學(xué)習(xí)關(guān)于WindowsAPI編程80學(xué)習(xí)使用WindowsAPI實(shí)現(xiàn)功能關(guān)機(jī)、重啟程序研究40編程實(shí)現(xiàn)計(jì)算機(jī)關(guān)機(jī)、重啟獲取計(jì)算機(jī)信息程序研究40編程實(shí)現(xiàn)計(jì)算機(jī)信息獲取增加帳戶程序研究40編程實(shí)現(xiàn)增加帳戶截圖程序研究80編程實(shí)現(xiàn)程序截圖鍵盤記錄程序研究80編程實(shí)現(xiàn)鍵盤記錄程序調(diào)用研究80主程序調(diào)用子程序?qū)崿F(xiàn)功能表1-1主要工作量統(tǒng)計(jì)表1.5研究?jī)?nèi)容1.5.1主要研究?jī)?nèi)容基于設(shè)計(jì)的要求,我選擇了使用WindowsXP下的作為開(kāi)發(fā)工具,主要使用其中的WindowsAPI函數(shù)來(lái)實(shí)現(xiàn)上述功能。1〕開(kāi)發(fā)關(guān)于計(jì)算機(jī)關(guān)機(jī)的子程序2〕開(kāi)發(fā)關(guān)于計(jì)算機(jī)重啟的子程序3〕開(kāi)發(fā)關(guān)于獲取計(jì)算機(jī)信息的子程序4〕開(kāi)發(fā)關(guān)于增加帳戶的子程序5〕開(kāi)發(fā)關(guān)于截圖的子程序6〕開(kāi)發(fā)關(guān)于鍵盤記錄的子程序7〕開(kāi)發(fā)程序調(diào)用的主程序1.5.2主要技術(shù)要求(1)實(shí)現(xiàn)程序預(yù)期的主要功能;(2)實(shí)現(xiàn)調(diào)用過(guò)程;(3)可以通過(guò)簡(jiǎn)單修改主程可以實(shí)現(xiàn)從客戶端調(diào)用主程序命令實(shí)現(xiàn)遠(yuǎn)程控制第2章遠(yuǎn)程控制程序的設(shè)計(jì)思路本次設(shè)計(jì)采用分步設(shè)計(jì)的方法,首先單獨(dú)實(shí)現(xiàn)子程序功能,通過(guò)對(duì)子程序修改設(shè)計(jì),再總體編寫主程序,實(shí)現(xiàn)調(diào)用。本章重點(diǎn)介紹設(shè)計(jì)各個(gè)子程序的主要思路。2.1關(guān)機(jī)、重啟子程序在本次程序設(shè)計(jì)中,首先查閱了基于WindowsAPI的函數(shù)接口編程實(shí)例,學(xué)習(xí)了關(guān)于系統(tǒng)system函數(shù)集,使用此函數(shù)可以實(shí)現(xiàn)計(jì)算機(jī)的關(guān)機(jī)與重啟,也可以實(shí)現(xiàn)文件的刪除等功能,主要使用Windows命令行命令來(lái)控制。分別寫入兩個(gè)子程序,方便最后組合的主程序調(diào)用。子程序流程圖如圖2-1。圖2-1關(guān)機(jī)、重啟子程序流程圖2.2讀取計(jì)算機(jī)信息子程序在WindowsAPI中,可以獲取與管理Windows系統(tǒng)信息包括系統(tǒng)根本信息、時(shí)間信息、注冊(cè)表。其中系統(tǒng)信息的獲取主要包括系統(tǒng)目錄、Windows安裝目錄、用戶名、計(jì)算機(jī)名、域名等。在這個(gè)子程序設(shè)計(jì)過(guò)程中,主要使用的就是WindowsAPI函數(shù)來(lái)獲取其中我們需要的信息,如安裝目錄、用戶名、計(jì)算機(jī)名等。獲取了這些信息,才有助于我們的遠(yuǎn)程控制,以及以后的后續(xù)操作。讀取了計(jì)算機(jī)根本信息后輸出到D:\get.txt。在調(diào)試功能實(shí)現(xiàn)以后,講程序改編為子程序,方便以后主程序的調(diào)用。流程圖如圖2-2.函數(shù)如下:獲取系統(tǒng)版本:GetVersionEx;獲取計(jì)算機(jī)硬件信息:GetSystemInfo;獲取安裝目錄:GetSystemDirectory;獲取用戶名:GetUserName;獲取計(jì)算機(jī)名:GetComputerName;圖2-2讀取計(jì)算機(jī)信息子程序流程圖2.3增加帳戶子程序在上一個(gè)子程序設(shè)計(jì)中,已經(jīng)讀取了計(jì)算機(jī)名以及用戶名,為了方便以后的控制,在駐留端計(jì)算機(jī)上增加一個(gè)屬于自己的專用超級(jí)用戶是必須的,我們假定增加的超級(jí)帳戶名:admin;密碼:admin,在WindowsAPI中依然有關(guān)于計(jì)算機(jī)帳戶添加的函數(shù),調(diào)用增加即可。程序流程圖如圖2-3.函數(shù)如下:創(chuàng)立帳戶:NetUserAdd;將用戶添加到用戶組:NetGroupAddUser;圖2-3增加帳戶子程序流程圖2.4截圖子程序截取屏幕的流程:截取屏幕輸出一般需要經(jīng)過(guò)以下步驟。使用字符串“DISPLAY”為參數(shù),調(diào)用CreateDC,得到類型為“顯示”的DC。調(diào)用CreateCompatibleDC創(chuàng)立一個(gè)內(nèi)存DC。得到需要截取的屏幕區(qū)域,比方調(diào)用GetDeviceCaps獲取屏幕大小,GetWindowRect獲取窗口區(qū)域等。調(diào)用CreateCompatibleBitmap創(chuàng)立BITMAP。調(diào)用SelectObject,將創(chuàng)立的BITMAP選擇入內(nèi)存DC,并將返回值使用另外一個(gè)BITMAP對(duì)象句柄來(lái)保存,SelectObject的返回值表示了DC中唄替換的圖形對(duì)象。 調(diào)用BitBlt函數(shù)將源DC〔顯示類型的DC〕指定位塊 〔bit-block〕的顏色數(shù)據(jù)轉(zhuǎn)移到目的DC〔內(nèi)存〕中。將之前保存的舊的BITMAP對(duì)象再調(diào)用SelectObject選擇回內(nèi)存DC中,這樣從顯示的內(nèi)存DC中BitBlt到內(nèi)存DC中的位塊顏色數(shù)據(jù)就被替換掉,SelectObject的返回值即是從屏幕中得到的位圖對(duì)象〔HBITMAP類型〕。由于在我們程序設(shè)計(jì)的要求中,不需要調(diào)整截圖的大小,只需要全屏幕截圖之后保存就可以了,所以比擬簡(jiǎn)單,不用調(diào)整獲取區(qū)域。在截圖完成后由內(nèi)存輸出到D:\jietu.bmp。程序流程圖如圖2-4。如圖2-4截圖子程序流程圖2.5鍵盤記錄子程序在WindowsAPI中,GetKey函數(shù)是記錄鍵盤輸入的信息,在鍵盤記錄子程序的,使用GetKey函數(shù),記錄輸出的信息,之后轉(zhuǎn)換為我們平??吹降淖址敵觯敵龅紻:\,中間主要的程序就是替換輸入的信息和輸出的信息轉(zhuǎn)換,以及Shift和CapsLock按鍵之后的字符轉(zhuǎn)換。程序流程圖如圖2-5。圖2-5鍵盤記錄子程序流程圖2.6主程序調(diào)用主程序中主要的功能就是在檢測(cè)到輸入的命令之后,分別調(diào)用子程序?qū)崿F(xiàn)功能,在輸入的過(guò)程中,根據(jù)命令調(diào)用子程序完成后返回進(jìn)入待機(jī)狀態(tài),等待下一步命令,主程序中的命令輸入可以與網(wǎng)絡(luò)控制命令結(jié)合,直接實(shí)現(xiàn)遠(yuǎn)程控制,在本次設(shè)計(jì)中,只需要做出控制端程序,為了模擬控制,所以直接本地控制,如需要加上遠(yuǎn)程控制只需要與遠(yuǎn)程客戶端程序添加調(diào)用程序即可。流程圖如圖2-6圖2-6主程序流程圖2.7本章小結(jié)本章主要是討論本次設(shè)計(jì)中的有關(guān)功能實(shí)現(xiàn)流程,通過(guò)對(duì)程序子程序的規(guī)劃、設(shè)計(jì),實(shí)現(xiàn)了對(duì)遠(yuǎn)程控制程序根本功能。對(duì)各個(gè)子程序的功能實(shí)現(xiàn)的流程進(jìn)行了分析,最后對(duì)使用主程序調(diào)用子程序?qū)崿F(xiàn)功能。如果需要使用網(wǎng)絡(luò)命令調(diào)用函數(shù)實(shí)現(xiàn)功能,只需要使用客戶端程序調(diào)用代碼修改即可。第3章遠(yuǎn)程控制程序的設(shè)計(jì)3.1子程序設(shè)計(jì)本次設(shè)計(jì)的主要功能是使用WindowsAPI的函數(shù)實(shí)現(xiàn)的,其中主程序的調(diào)用在實(shí)際的設(shè)計(jì)中是可以與控制端程序聯(lián)合設(shè)計(jì),本次設(shè)計(jì)中只是為了方便功能的實(shí)現(xiàn)參加顯示調(diào)用,子程序?qū)崿F(xiàn)的功能〔如截圖的保存,鍵盤記錄等〕主要是保存在D盤目錄下,方便以后的使用。3.1.1計(jì)算機(jī)關(guān)機(jī)、重啟程序設(shè)計(jì)使用VC中的system函數(shù)主要功能就是發(fā)出一個(gè)DOS命令,其中的函數(shù)變量即為DOC中的命令,system函數(shù)已經(jīng)被收錄在標(biāo)準(zhǔn)C庫(kù)中,由于C++全面兼容了標(biāo)準(zhǔn)C庫(kù),所以在這兒就可以直接調(diào)用system函數(shù)實(shí)現(xiàn)可以用DOC命令行程序?qū)崿F(xiàn)關(guān)于計(jì)算機(jī)的根本操作,如:關(guān)機(jī)、重啟等。函數(shù)如下:system("shutdown-s-t0");//shutdown–s為關(guān)機(jī)命令,-t為時(shí)間設(shè)置,默認(rèn)為30秒,在此我們?cè)O(shè)置為0秒,即立刻關(guān)機(jī)system("shutdown–r-t0");//shutdown–r為重啟命令,-t為時(shí)間設(shè)置,默認(rèn)為30秒,在此我們?cè)O(shè)置為0秒,即立刻重啟上述兩條功能實(shí)現(xiàn)調(diào)用了同一個(gè)函數(shù),很簡(jiǎn)單,在此不做過(guò)多討論。3.1.2讀取計(jì)算機(jī)信息程序設(shè)計(jì)以下的子程序設(shè)計(jì)根本上都是使用的WindowsAPI函數(shù)實(shí)現(xiàn)的,首先是計(jì)算機(jī)根本信息的獲取,計(jì)算機(jī)版本、用戶名、計(jì)算機(jī)名的獲取,在WindowsAPI中有特定的的函數(shù)讀取這些信息。1〕計(jì)算機(jī)版本的獲?。嚎梢允褂肎etVersionEx函數(shù)獲取系統(tǒng)版本信息,函數(shù)原型如下:BOOLGetVersionEx( LPOSVERSIONINFOlpVersionInfo);

參數(shù)lpVersionInfo:輸入、輸出參數(shù),此參數(shù)為OSVERSIONINFO或者OSVERSIONINFOEX結(jié)構(gòu)的指針,用于存儲(chǔ)獲取的系統(tǒng)版本信息。這兩個(gè)結(jié)構(gòu)的第一個(gè)成員都是dwOSVersionInfoSize,如果使用OSVERSIONINFO結(jié)構(gòu)那么將此成員設(shè)置為sizeof(OSVERSIONINFO)如果使用OSVERSIONINFOEX結(jié)構(gòu),那么設(shè)置此成員為sizeof(OSVERSIONINFOEX)。

返回值BOOL類型,表示是否成功。使用GetLastError函數(shù)獲取錯(cuò)誤代碼。2〕用戶名、計(jì)算機(jī)名:獲取當(dāng)前登錄用戶使用API函數(shù)GetUserName,獲取計(jì)算機(jī)名使用API函數(shù)GetComputerName,獲取特定格式的計(jì)算機(jī)名使用API函數(shù)GetComputerNameEx,設(shè)置計(jì)算機(jī)名使用API函數(shù)SetComputerName和SetComputerNameEX。GetUserName獲取當(dāng)前登錄的用戶名,函數(shù)定義如下:BOOLGetUserName( LPTSTRlpBuffer,LPDWORDnSize);

參數(shù)lpBuffer:輸出參數(shù),指向保存登錄用戶名的內(nèi)存緩沖區(qū)。其大小最好不小于(UNLEN+1),UNLEN定義在Lmcons.h中。nSize:輸入、輸出參數(shù),指向表示lpBuffer的大小〔字符數(shù)〕的DWORD型變量。如果小于所需要的大小,那么lpnSize返回需要的大小,函數(shù)返回失敗。GetComputerName獲取當(dāng)前計(jì)算機(jī)名,函數(shù)的定義如下:BOOLGetComputerName(LPTSTRlpBuffer,LPDWORDlpnSize);

參數(shù)lpBuffer:輸出參數(shù),指向保存計(jì)算機(jī)名的內(nèi)存緩沖區(qū),其大小最好不小于(MAXCOMPUTERNAME一LENGTH+1)。lpnSize:輸入、輸出參數(shù),指向表示lpBuffer的大小〔字符數(shù)〕的DWORD型變量。如果小于所需要的大小,那么lpnSize返回需要的大小,函數(shù)返回失敗。

返回值BOOL型,表示是否成功。使用GetLastError獲取錯(cuò)誤信息。局部程序代碼如下:voidShowInfo(){…//獲取計(jì)算機(jī)版本信息if(over.dwMajorVersion==5){if(over.dwMajorVersion==0) lstrcat(szVersionInfo,”Windows2000”); elseif(over.dwMajorVersion==1) lstrcat(szVersionInfo,”WindowsXP”); elseif(over.dwMajorVersion==2) lstrcat(szVersionInfo,”WindowsServer2003”);}elseif(over.dwMajorVersion==6) lstrcat(szVersionInfo,”WindowsVista”);elseif lstrcat(szVersionInfo,”WindowsNT4.0或者其他”);//獲取計(jì)算機(jī)名以及用戶名DWORDdwComputerNameLen=MAX_COMPUTERNAME_LENGTH+1;DWORDdwUserNameLen=UNLEN+1;TCHARszComputerName[MAX_COMPUTERNAME_LENGTH+1];TCHARszUserName[UNLEN+1];COMPUTER_NAME_FORMATconf;GetComputerName(szComputerName,&dwComputerNameLen);GetUserName(szUserName,&dwUserNameLen);}圖3-1獲取計(jì)算機(jī)信息結(jié)果截圖3.1.3增加賬戶程序設(shè)計(jì)程序的設(shè)計(jì)要求中是添加一個(gè)用戶,本程序定義的是添加用戶名為admin,密碼為admin的超級(jí)賬戶。1〕增加用戶:在WindowsAPI中,創(chuàng)立新用戶的函數(shù)是NetUserAddAPI,函數(shù)原型如下:NET_API_STATUSNetUserAdd( LMSTRservername, DWORDlevel, LPBYTEbuf, LPDWORDparm_err);servername參數(shù)是需要添加用戶的主機(jī)名,如果是本機(jī)那么設(shè)置為NULL。level參數(shù)決定了buf參數(shù)的結(jié)構(gòu),設(shè)置為1、2、3、4分別表示buf參數(shù)所指向的內(nèi)容為USER_INFO_1、USER_INF0_2、USER_INFO_3、USER_INF0_4。這4個(gè)結(jié)構(gòu)都包括了用戶的相關(guān)信息,只是所包括的信息的豐富程度不同。以USER_INFO_1為例,包括用戶的一些根本信息,用戶名、密碼、密碼期限、優(yōu)先級(jí)、用戶HOME路徑、描述等。typedefstruct_USER_INFO_1{ LPWSTRusril_name; LPWSTRusril_password; DWORDusril_password_age; DWORDusril_priv; LPWSTRusril_home_dir; LPWSTRusril_comment; DWORDusril_flags; LPWSTRusril_script_path;}USER_INFO_1,*PUSER_INFO_1,*LPUSER_INFO_1;2〕將用戶增加到administrator組中NetGroupAddUser的功能分別是將用戶添加到用戶組,函數(shù)原型如下:NET_API_STATUSNetGroupAddUser( LPCWSTRservername, LPCWSTRGroupName,LPCWSTRusername);level參數(shù)也是指定buf參數(shù)的類型。buf參數(shù)類型包括GROUP_INFO_1、GROUPINF02、GROUP_INF0_3、GROUPINF0_4。局部程序代碼如下:IntAddUser(LPWSTRNULL,LPWSTRadmin,LPWSTRadmin)//參數(shù)為:主機(jī)名〔本機(jī)設(shè)置為NULL〕;用戶名;密碼{ USER_INFO_1ui; DWORDdwLevel=1; DWORDdwError=0; NET_API_STATUSnStatus; //填充USER_INFO_1 ui.usri1_name=admin;//用戶名 ui.usri1_password=admin;//密碼 ui.usri1_priv=USER_PRIV_USER;//級(jí)別 ui.usri1_home_dir=NULL; ui.usri1_comment=NULL; ui.usri1_flags=UF_SCRIPT; ui.usri1_script_path=MULL; //調(diào)用NetUserAdd,增加用戶 nStatus=NetUserAdd(NULL, dwLevel, (LPBYTE)&ui, &dwError); }圖3-2增加帳戶前管理界面截圖圖3-3增加帳戶后管理界面截圖3.1.4截圖程序設(shè)計(jì)在Windows環(huán)境中,設(shè)備上下文(DC)及基于設(shè)備上下文的繪圖操作是用戶界面的核心。在WindowsAPI的幫助下程序可以很簡(jiǎn)單地得到設(shè)備上下文的實(shí)例,并通過(guò)這個(gè)設(shè)備上下文實(shí)例來(lái)獲取屏幕圖像。//常量定義#definePALVERSION0x300#defineCAP_SHOW_MODE_STRTCH1#defineCAP_SHOW_MODE_NOSTRTCH0//全局變量HBITMAPghBitmap=NULL;RECTrectShow;//修改此處可以更改截取不同窗口,null為全屏LPSTRszCaptureWindowName=NULL;…DWORDWINAPIWinMain(HINSTANCEhinstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdSshow)ghBitmap=ScreenCapture(“D:\\”,NULL);HBITMAPScreenCapture(LPSTRfilename,//截圖保存路徑 LPRECTlpRect)//截圖區(qū)域u,為NULL時(shí)截全屏{…HDChdc=CreateDC(“DISPLAY”,NULL,NULL,NULL);intscreenw=GetDeviceCaps(hdc,HORZRES);intscreenh=GetDeviceCaps(hdc,VERIRES;HDChmdc=CreateCompatibleDC(hdc);HBITMAPhbm=CreateCompatibleBitmap(hdc,screenw-screenh);SelectObject(hmdc,hbm);BitBlt(hmdc,0,0,screenw,screenh,hdc,0,0,SRCCOPy);…}圖3-4截圖程序捕獲桌面以及存放的位置3.1.5鍵盤記錄程序設(shè)計(jì)首先要分析主控端如何模擬獲取操作者的操作。本文采用如下的數(shù)據(jù)結(jié)構(gòu)來(lái)記錄一次操作者的操作,這些數(shù)據(jù)結(jié)構(gòu)定義在系統(tǒng)的<winuser.h>頭文件中。typedefstructtagINPUT{DWORDtype;union{KEYDBINPUTki;HARDWAREINPUThi;);)INPUT,*PINPUT;在上述的數(shù)據(jù)結(jié)構(gòu)中,KEYDBINUT為鍵盤輸入的數(shù)據(jù)。stringFilename="D:\\log.txt"; //最后通過(guò)此命令輸出到文件,路徑為D:\如果需要遠(yuǎn)程控制,輸出信息到遠(yuǎn)程計(jì)算機(jī),那么可以使用WindowsAPI中的函數(shù)SendUserlnput實(shí)現(xiàn),函數(shù)結(jié)構(gòu)如下:BOOLSendUserlnput(INPUT*input,UINTnumber)把操作信息傳輸?shù)奖豢囟?。被控端在接收到主控端傳?lái)的輸人信息后,直接調(diào)用WinAPl函數(shù)Sendlnput送給系統(tǒng)處理。圖3-5鍵盤記錄結(jié)果截圖3.2主程序設(shè)計(jì)本次設(shè)計(jì)的主要工作都已經(jīng)在子程序中完成了,最后的主程序最要的功能就是為了實(shí)現(xiàn)子程序的調(diào)用,分別輸入不同的命令,調(diào)用不同的子程序,實(shí)現(xiàn)計(jì)算機(jī)的控制,可以與控制端的網(wǎng)絡(luò)命令一同實(shí)現(xiàn)計(jì)算機(jī)的遠(yuǎn)程控制。只需要使用簡(jiǎn)單if判斷語(yǔ)句就可以實(shí)現(xiàn)。主程序控制命令如下:11——計(jì)算機(jī)關(guān)機(jī);12——計(jì)算機(jī)重啟;21——讀取計(jì)算機(jī)信息;31——增加admin賬戶;41——屏幕截圖;51——鍵盤記錄。圖3-5主程序界面選擇窗口結(jié)論通過(guò)本次課題的探索與研究,我們?cè)O(shè)計(jì)出了一個(gè)模擬的計(jì)算機(jī)遠(yuǎn)程控制駐留端程序,主要的方向就是計(jì)算機(jī)控制以及計(jì)算機(jī)記錄方面,通過(guò)本地的控制可以實(shí)現(xiàn)功能,但是與遠(yuǎn)程計(jì)算機(jī)連接的控制方面融合不多,需要以后繼續(xù)研究。 本次的程序設(shè)計(jì)主要包括了計(jì)算機(jī)關(guān)機(jī)、重啟、信息讀取、add賬戶、截圖、鍵盤記錄等子程序,在主程序中我們通調(diào)用將各個(gè)子程序連接起來(lái),共同實(shí)現(xiàn)計(jì)算機(jī)的控制,形成了一個(gè)完成的程序。通過(guò)該程序,我們可以在界面上輸入不同的命令是計(jì)算機(jī)實(shí)現(xiàn)不同的功能,以及得到計(jì)算機(jī)的信息等功能。本次設(shè)計(jì)的遠(yuǎn)程控制程序——駐留端主要能實(shí)現(xiàn)如下功能:通過(guò)鍵盤輸入命令可以實(shí)現(xiàn)計(jì)算機(jī)的關(guān)機(jī);通過(guò)鍵盤輸入命令可以實(shí)現(xiàn)計(jì)算機(jī)的關(guān)機(jī);;通過(guò)鍵盤輸入命令可以在計(jì)算機(jī)administrator組中參加admin賬戶;通過(guò)鍵盤輸入命令可以實(shí)現(xiàn)計(jì)算機(jī)屏幕截圖,結(jié)果輸出到;通過(guò)鍵盤輸入命令可以實(shí)現(xiàn)計(jì)算機(jī)鍵盤輸入數(shù)據(jù)記錄,結(jié)果輸出到;致謝四年的讀書生活在這個(gè)季節(jié)即將劃上一個(gè)句號(hào),而于我的人生卻只是一個(gè)逗號(hào),我將面對(duì)又一次征程的開(kāi)始。四年的求學(xué)生涯在師長(zhǎng)、親友的大力支持下,走得辛苦卻也收獲滿囊,在論文即將付梓之際,思緒萬(wàn)千,心情久久不能平靜。偉人、名人為我所崇拜,可是我更急迫地要把我的敬意和贊美獻(xiàn)給一位平凡的人,我的導(dǎo)師——XXX老師。我不是您最出色的學(xué)生,而您卻是我最尊敬的老師。您治學(xué)嚴(yán)謹(jǐn),學(xué)識(shí)淵博,思想深邃,視野雄闊,為我營(yíng)造了一種良好的精神氣氛。授人以魚不如授人以漁,置身其間,耳濡目染,潛移默化,使我不僅接受了全新的思想觀念,樹(shù)立了宏偉的學(xué)術(shù)目標(biāo),領(lǐng)會(huì)了根本的思考方式,從論文題目的選定到論文寫作的指導(dǎo),經(jīng)由您悉心的點(diǎn)撥,再經(jīng)思考后的領(lǐng)悟,常常讓我有“山重水復(fù)疑無(wú)路,柳暗花明又一村”。感謝我的爸爸媽媽,焉得諼草,言樹(shù)之背,養(yǎng)育之恩,無(wú)以回報(bào),你們永遠(yuǎn)健康快樂(lè)是我最大的心愿。在論文即將完成之際,我的心情無(wú)法平靜,從開(kāi)始進(jìn)入課題到論文的順利完成,有多少可敬的師長(zhǎng)、同學(xué)、朋友給了我無(wú)言的幫助,在這里請(qǐng)接受我誠(chéng)摯謝意!同時(shí)也感謝學(xué)院為我提供良好的做畢業(yè)設(shè)計(jì)的環(huán)境。最后再一次感謝所有在畢業(yè)設(shè)計(jì)中曾經(jīng)幫助過(guò)我的良師益友和同學(xué),以及在設(shè)計(jì)中被我引用或參考的論著的作者。參考文獻(xiàn)[1]胡建偉,湯建龍,楊紹全.《網(wǎng)絡(luò)對(duì)抗原理[M]》.西安電子科技大學(xué)出版社,2004:236-268.[2]鄧麗,董淵,張瑞豐.《C++語(yǔ)言程序設(shè)計(jì)〔第三版〕[M]》.清華大學(xué)出版社,2004:324-358.[3],.《計(jì)算機(jī)網(wǎng)絡(luò)自頂向下方法[M]》.機(jī)械工業(yè)出版社,2009:596-607.[4]單春,《網(wǎng)絡(luò)攻擊中的特洛伊木馬及其防范手段[J]》.遼寧師范太學(xué)學(xué)報(bào)〔自然科學(xué)版〕.V01,23No,34-39,2000.[5]岳兵,霍寶鋒,謝冰,趙云霞,劉伯瑩.《網(wǎng)絡(luò)入侵行為模式研究[M]》.天津大學(xué)學(xué)報(bào),V01,36No,25-29,2003.[6]楊守君.《黑客技術(shù)與網(wǎng)絡(luò)平安[M]》.北京:中國(guó)對(duì)外翻譯出版公司,2000:68-128.[7]盧勇煥.《黑客與平安[M]》.中國(guó)青年出版社,2001:6-19.[8]張漢亭.《計(jì)算機(jī)病毒與反病毒技術(shù)[M]》.清華大學(xué)出版社,199::110-126.[9]張鍵.《防毒殺毒[M]》.電子工業(yè)出版社,1999:406-409.[10]藺聰.基于木馬的黑客攻擊技術(shù)[J].[期刊論文].電腦知識(shí)與技術(shù),2008〔8〕:5-10.[11]羅澤軍.通信管理系統(tǒng)的平安性研究[J].[學(xué)位論文]碩士,2006:15-16.[12]周凱.計(jì)算機(jī)網(wǎng)絡(luò)常見(jiàn)攻擊技術(shù)及其防范研究[J].[期刊論文].科技信息,2008〔35〕:19-23.[13]陳慶忠.木馬程序設(shè)計(jì)[J].[學(xué)位論文]學(xué)士,2010:134-176.[14]范文慶.周彬彬,安靖,精通WindowsAPI—函數(shù),接口,編程實(shí)例[M].人民郵電出版社,2009:307-356.[15]宋彥儒,周翔.計(jì)算機(jī)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)[J].[學(xué)位論文],2008:1-6.[16]JeffProsise.MTCWindows程序設(shè)計(jì)[M].清華大學(xué)出版社,2001:307-349.[17]丁寒舒,敬榮,汪淵.計(jì)算機(jī)遠(yuǎn)程控制研究[J].[期刊論文],2010:68-79.附錄API函數(shù)表WNetAddConnection創(chuàng)立同一個(gè)網(wǎng)絡(luò)資源的永久性連接WNetAddConnection2創(chuàng)立同一個(gè)網(wǎng)絡(luò)資源的連接WNetAddConnection3創(chuàng)立同一個(gè)網(wǎng)絡(luò)資源的連接WNetCancelConnection結(jié)束一個(gè)網(wǎng)絡(luò)連接WNetCancelConnection2結(jié)束一個(gè)網(wǎng)絡(luò)連接WNetCloseEnum結(jié)束一次枚舉操作WNetConnectionDialog啟動(dòng)一個(gè)標(biāo)準(zhǔn)對(duì)話框,以便建立同網(wǎng)絡(luò)資源的連接WNetDisconnectDialog啟動(dòng)一個(gè)標(biāo)準(zhǔn)對(duì)話框,以便斷開(kāi)同網(wǎng)絡(luò)資源的連接WNetEnumResource枚舉網(wǎng)絡(luò)資源WNetGetConnection獲取本地或已連接的一個(gè)資源的網(wǎng)絡(luò)名稱WNetGetLastError獲取網(wǎng)絡(luò)錯(cuò)誤的擴(kuò)展錯(cuò)誤信息WNetGetUniversalName獲取網(wǎng)絡(luò)中一個(gè)文件的遠(yuǎn)程名稱以及/或者UNC〔統(tǒng)一命名標(biāo)準(zhǔn)〕名稱WNetGetUser獲取一個(gè)網(wǎng)絡(luò)資源用以連接的名字WNetOpenEnum啟動(dòng)對(duì)網(wǎng)絡(luò)資源進(jìn)行枚舉的過(guò)程BroadcastSystemMessage將一條系統(tǒng)消息播送給系統(tǒng)中所有的頂級(jí)窗口GetMessagePos取得消息隊(duì)列中上一條消息處理完畢時(shí)的鼠標(biāo)指針屏幕位置GetMessageTime取得消息隊(duì)列中上一條消息處理完畢時(shí)的時(shí)間PostMessage將一條消息投遞到指定窗口的消息隊(duì)列PostThreadMessage將一條消息投遞給應(yīng)用程序RegisterWindowMessage獲取分配給一個(gè)字串標(biāo)識(shí)符的消息編號(hào)ReplyMessage答復(fù)一個(gè)消息SendMessage調(diào)用一個(gè)窗口的窗口函數(shù),將一條消息發(fā)給那個(gè)窗口SendMessageCallback將一條消息發(fā)給窗口SendMessageTimeout向窗口發(fā)送一條消息SendNotifyMessage向窗口發(fā)送一條消息CloseHandle關(guān)閉一個(gè)內(nèi)核對(duì)象。其中包括文件、文件映射、進(jìn)程、線程、平安和同步對(duì)象等CompareFileTime比照兩個(gè)文件的時(shí)間CopyFile復(fù)制文件CreateDirectory創(chuàng)立一個(gè)新目錄CreateFile翻開(kāi)和創(chuàng)立文件、管道、郵槽、通信效勞、設(shè)備以及控制臺(tái)CreateFileMapping創(chuàng)立一個(gè)新的文件映射對(duì)象DeleteFile刪除指定文件DeviceIoControl對(duì)設(shè)備執(zhí)行指定的操作DosDateTimeToFileTime將DOS日期和時(shí)間值轉(zhuǎn)換成一個(gè)win32FILETIME值FileTimeToDosDateTime將一個(gè)win32FILETIME值轉(zhuǎn)換成DOS日期和時(shí)間值FileTimeToLocalFileTime將一個(gè)FILETIME結(jié)構(gòu)轉(zhuǎn)換本錢地時(shí)間FileTimeToSystemTime根據(jù)一個(gè)FILETIME結(jié)構(gòu)的內(nèi)容,裝載一個(gè)SYSTEMTIME結(jié)構(gòu)FindClose關(guān)閉由FindFirstFile函數(shù)創(chuàng)立的一個(gè)搜索句柄FindFirstFile根據(jù)文件名查找文件FindNextFile根據(jù)調(diào)用FindFirstFile函數(shù)時(shí)指定的一個(gè)文件名查找下一個(gè)文件FlushFileBuffers針對(duì)指定的文件句柄,刷新內(nèi)部文件緩沖區(qū)FlushViewOfFile將寫入文件映射緩沖區(qū)的所有數(shù)據(jù)都刷新到磁盤GetBinaryType判斷文件是否可以執(zhí)行GetCompressedFileSize判斷一個(gè)壓縮文件在磁盤上實(shí)際占據(jù)的字節(jié)數(shù)GetCurrentDirectory在一個(gè)緩沖區(qū)中裝載當(dāng)前目錄GetDiskFreeSpace獲取與一個(gè)磁盤的組織有關(guān)的信息,以及了解剩余空間的容量GetDiskFreeSpaceEx獲取與一個(gè)磁盤的組織以及剩余空間容量有關(guān)的信息GetDriveType判斷一個(gè)磁盤驅(qū)動(dòng)器的類型GetExpandedName取得一個(gè)壓縮文件的全名GetFileAttributes判斷指定文件的屬性GetFileInformationByHandle這個(gè)函數(shù)提供了獲取文件信息的一種機(jī)制GetFileSize判斷文件長(zhǎng)度GetFileTime取得指定文件的時(shí)間信息GetFileType在給出文件句柄的前提下,判斷文件類型GetFileVersionInfo從支持版本標(biāo)記的一個(gè)模塊里獲取文件版本信息GetFileVersionInfoSize針對(duì)包含了版本資源的一個(gè)文件,判斷容納文件版本信息需要一個(gè)多大的緩沖區(qū)GetFullPathName獲取指定文件的完整路徑名GetLogicalDrives判斷系統(tǒng)中存在哪些邏輯驅(qū)動(dòng)器字母GetLogicalDriveStrings獲取一個(gè)字串,其中包含了當(dāng)前所有邏輯驅(qū)動(dòng)器的根驅(qū)動(dòng)器路徑GetOverlappedResult判斷一個(gè)重疊操作當(dāng)前的狀態(tài)GetPrivateProfileInt為初始化文件〔.ini文件〕中指定的條目獲取一個(gè)整數(shù)值GetPrivateProfileSection獲取指定小節(jié)〔在.ini文件中〕所有項(xiàng)名和值的一個(gè)列表GetPrivateProfileString為初始化文件中指定的條目取得字串GetProfileInt取得win.ini初始化文件中指定條目的一個(gè)整數(shù)值GetProfileSection獲取指定小節(jié)〔在win.ini文件中〕所有項(xiàng)名和值的一個(gè)列表GetProfileString為win.ini初始化文件中指定的條目取得字串GetShortPathName獲取指定文件的短路徑名GetSystemDirectory取得Windows系統(tǒng)目錄〔即System目錄〕的完整路徑名GetTempFileName這個(gè)函數(shù)包含了一個(gè)臨時(shí)文件的名字,它可由應(yīng)用程序使用GetTempPath獲取為臨時(shí)文件指定的路徑GetVolumeInformation獲取與一個(gè)磁盤卷有關(guān)的信息GetWindowsDirectory獲取Windows目錄的完整路徑名hread參考lreadhwrite參考lwrite函數(shù)lclose關(guān)閉指定的文件lcreat創(chuàng)立一個(gè)文件llseek設(shè)置文件中進(jìn)行讀寫的當(dāng)前位置LockFile鎖定文件的某一局部,使其不與其他應(yīng)用程序共享LockFileEx與LockFile相似,只是它提供了更多的功能lopen以二進(jìn)制模式翻開(kāi)指定的文件lread將文件中的數(shù)據(jù)讀入內(nèi)存緩沖區(qū)lwrite將數(shù)據(jù)從內(nèi)存緩沖區(qū)寫入一個(gè)文件LZClose關(guān)閉由LZOpenFile或LZInit函數(shù)翻開(kāi)的一個(gè)文件LZCopy復(fù)制一個(gè)文件LZInit這個(gè)函數(shù)用于初始化內(nèi)部緩沖區(qū)LZOpenFile該函數(shù)能執(zhí)行大量不同的文件處理,而且兼容于壓縮文件LZRead將數(shù)據(jù)從文件讀入內(nèi)存緩沖區(qū)LZSeek設(shè)置一個(gè)文件中進(jìn)行讀寫的當(dāng)前位置MapViewOfFile將一個(gè)文件映射對(duì)象映射到當(dāng)前應(yīng)用程序的地址空間MoveFile移動(dòng)文件OpenFile這個(gè)函數(shù)能執(zhí)行大量不同的文件操作OpenFileMapping翻開(kāi)一個(gè)現(xiàn)成的文件映射對(duì)象QueryDosDevice在WindowsNT中,DOS設(shè)備名會(huì)映射成NT系統(tǒng)設(shè)備名。該函數(shù)可判斷當(dāng)前的設(shè)備映射情況ReadFile從文件中讀出數(shù)據(jù)ReadFileEx與ReadFile相似,只是它只能用于異步讀操作,并包含了一個(gè)完整的回調(diào)RegCloseKey關(guān)閉系統(tǒng)注冊(cè)表中的一個(gè)項(xiàng)〔或鍵〕RegConnectRegistry訪問(wèn)遠(yuǎn)程系統(tǒng)的局部注冊(cè)表RegCreateKey在指定的項(xiàng)下創(chuàng)立或翻開(kāi)一個(gè)項(xiàng)RegCreateKeyEx在指定項(xiàng)下創(chuàng)立新項(xiàng)的更復(fù)雜的方式。在Win32環(huán)境中建議使用這個(gè)函數(shù)RegDeleteKey刪除現(xiàn)有項(xiàng)下方一個(gè)指定的子項(xiàng)RegDeleteValue刪除指定項(xiàng)下方的一個(gè)值RegEnumKey枚舉指定項(xiàng)的子項(xiàng)。在Win32環(huán)境中應(yīng)使用RegEnumKeyExRegEnumKeyEx枚舉指定項(xiàng)下方的子項(xiàng)RegEnumValue枚舉指定項(xiàng)的值RegFlushKey將對(duì)項(xiàng)和它的子項(xiàng)作出的改動(dòng)實(shí)際寫入磁盤RegGetKeySecurity獲取與一個(gè)注冊(cè)表項(xiàng)有關(guān)的平安信息RegLoadKey從以前用RegSaveKey函數(shù)創(chuàng)立的一個(gè)文件里裝載注冊(cè)表信息RegNotifyChangeKeyValue注冊(cè)表項(xiàng)或它的任何一個(gè)子項(xiàng)發(fā)生變化時(shí),用這個(gè)函數(shù)提供一種通知機(jī)制RegOpenKey翻開(kāi)一個(gè)現(xiàn)有的注冊(cè)表項(xiàng)RegOpenKeyEx翻開(kāi)一個(gè)現(xiàn)有的項(xiàng)。在win32下推薦使用這個(gè)函數(shù)RegQueryInfoKey獲取與一個(gè)項(xiàng)有關(guān)的信息RegQueryValue取得指定項(xiàng)或子項(xiàng)的默認(rèn)〔未命名〕值RegQueryValueEx獲取一個(gè)項(xiàng)的設(shè)置值RegReplaceKey用一個(gè)磁盤文件保存的信息替換注冊(cè)表信息;并創(chuàng)立一個(gè)備份,在其中包含當(dāng)前注冊(cè)表信息RegRestoreKey從一個(gè)磁盤文件恢復(fù)注冊(cè)表信息RegSaveKey將一個(gè)項(xiàng)以及它的所有子項(xiàng)都保存到一個(gè)磁盤文件RegSetKeySecurity設(shè)置指定項(xiàng)的平安特性RegSetValue設(shè)置指定項(xiàng)或子項(xiàng)的默認(rèn)值RegSetValueEx設(shè)置指定項(xiàng)的值RegUnLoadKey卸載指定的項(xiàng)以及它的所有子項(xiàng)RemoveDirectory刪除指定目錄SearchPath查找指定文件SetCurrentDirectory設(shè)置當(dāng)前目錄SetEndOfFile針對(duì)一個(gè)翻開(kāi)的文件,將當(dāng)前文件位置設(shè)為文件末尾SetFileAttributes設(shè)置文件屬性SetFilePointer在一個(gè)文件中設(shè)置當(dāng)前的讀寫位置SetFileTime設(shè)置文件的創(chuàng)立、訪問(wèn)及上次修改時(shí)間SetHandleCount這個(gè)函數(shù)不必在win32下使用;即使使用,也不會(huì)有任何效果SetVolumeLabel設(shè)置一個(gè)磁盤的卷標(biāo)〔Label〕SystemTimeToFileTime根據(jù)一個(gè)FILETIME結(jié)構(gòu)的內(nèi)容,載入一個(gè)SYSTEMTIME結(jié)構(gòu)UnlockFile解除對(duì)一個(gè)文件的鎖定UnlockFileEx解除對(duì)一個(gè)文件的鎖定UnmapViewOfFile在當(dāng)前應(yīng)用程序的內(nèi)存地址空間解除對(duì)一個(gè)文件映射對(duì)象的映射VerFindFile用這個(gè)函數(shù)決定一個(gè)文件應(yīng)安裝到哪里VerInstallFile用這個(gè)函數(shù)安裝一個(gè)文件VerLanguageName這個(gè)函數(shù)能根據(jù)16位語(yǔ)言代碼獲取一種語(yǔ)言的名稱VerQueryValue這個(gè)函數(shù)用于從版本資源中獲取信息WriteFile將數(shù)據(jù)寫入一個(gè)文件WriteFileEx與WriteFile類似,只是它只能用于異步寫操作,并包括了一個(gè)完整的回調(diào)WritePrivateProfileSection為一個(gè)初始化文件〔.ini〕中指定的小節(jié)設(shè)置所有項(xiàng)名和值WritePrivateProfileString在初始化文件指定小節(jié)內(nèi)設(shè)置一個(gè)字串WriteProfileSection為Win.ini初始化文件中一個(gè)指定的小節(jié)設(shè)置所有項(xiàng)名和值BitBlt將一幅位圖從一個(gè)設(shè)備場(chǎng)景復(fù)制到另一個(gè)CopyIcon制作指定圖標(biāo)或鼠標(biāo)指針的一個(gè)副本。這個(gè)副本附屬于發(fā)出調(diào)用的應(yīng)用程序CopyImage復(fù)制位圖、圖標(biāo)或指針,同時(shí)在復(fù)制過(guò)程中進(jìn)行一些轉(zhuǎn)換工作CreateBitmap按照規(guī)定的格式創(chuàng)立一幅與設(shè)備有關(guān)位圖CreateBitmapIndirect創(chuàng)立一幅與設(shè)備有關(guān)位圖CreateCompatibleBitmap創(chuàng)立一幅與設(shè)備有關(guān)位圖,它與指定的設(shè)備場(chǎng)景兼容CreateCursor創(chuàng)立一個(gè)鼠標(biāo)指針CreateDIBitmap根據(jù)一幅與設(shè)備無(wú)關(guān)的位圖創(chuàng)立一幅與設(shè)備有關(guān)的位圖CreateDIBSection創(chuàng)立一個(gè)DIBSectionCreateIcon創(chuàng)立一個(gè)圖標(biāo)CreateIconIndirect創(chuàng)立一個(gè)圖標(biāo)DestroyCursor去除指定的鼠標(biāo)指針,并釋放它占用的所有系統(tǒng)資源DestroyIcon去除圖標(biāo)DrawIcon在指定的位置畫一個(gè)圖標(biāo)DrawIconEx描繪一個(gè)圖標(biāo)或鼠標(biāo)指針。與DrawIcon相比,這個(gè)函數(shù)提供了更多的功能ExtractAssociatedIcon判斷一個(gè)可執(zhí)行程序或DLL中是否存在圖標(biāo),或是否有圖標(biāo)與系統(tǒng)注冊(cè)表中指定的文件存在關(guān)聯(lián)并提取之ExtractIcon判斷一個(gè)可執(zhí)行文件或DLL中是否有圖標(biāo)存在,并將其提取出來(lái)GetBitmapBits將來(lái)自位圖的二進(jìn)制位復(fù)制到一個(gè)緩沖區(qū)GetBitmapDimensionEx取得一幅位圖的寬度和高度GetDIBColorTable從選入設(shè)備場(chǎng)景的DIBSection中取得顏色表信息GetDIBits將來(lái)自一幅位圖的二進(jìn)制位復(fù)制到一幅與設(shè)備無(wú)關(guān)的位圖里GetIconInfo取得與圖標(biāo)有關(guān)的信息GetStretchBltMode判斷StretchBlt和StretchDIBits函數(shù)采用的伸縮模式LoadBitmap從指定的模塊或應(yīng)用程序?qū)嵗休d入一幅位圖LoadCursor從指定的模塊或應(yīng)用程序?qū)嵗休d入一個(gè)鼠標(biāo)指針LoadCursorFromFile在一個(gè)指針文件或一個(gè)動(dòng)畫指針文件的根底上創(chuàng)立一個(gè)指針LoadIcon從指定的模塊或應(yīng)用程序?qū)嵗休d入一個(gè)圖標(biāo)LoadImage載入一個(gè)位圖、圖標(biāo)或指針MaskBlt執(zhí)行復(fù)雜的圖象傳輸,同時(shí)進(jìn)行掩?!睲ASK〕處理PatBlt在當(dāng)前選定的刷子的根底上,用一個(gè)圖案填充指定的設(shè)備場(chǎng)景PlgBlt復(fù)制一幅位圖,同時(shí)將其轉(zhuǎn)換成一個(gè)平行四邊形。利用它可對(duì)位圖進(jìn)行旋轉(zhuǎn)處理SetBitmapBits將來(lái)自緩沖區(qū)的二進(jìn)制位復(fù)制到一幅位圖SetBitmapDimensionEx設(shè)置一幅位圖的寬度。以一毫米的十分之一為單位SetDIBColorTable設(shè)置選入設(shè)備場(chǎng)景的一個(gè)DIBSection的顏色表信息SetDIBits將來(lái)自與設(shè)備無(wú)關(guān)位圖的二進(jìn)制位復(fù)制到一幅與設(shè)備有關(guān)的位圖里SetDIBitsToDevice將一幅與設(shè)備無(wú)關(guān)位圖的全部或局部數(shù)據(jù)直接復(fù)制到一個(gè)設(shè)備SetStretchBltMode指定StretchBlt和StretchDIBits函數(shù)的伸縮模式StretchBlt將一幅位圖從一個(gè)設(shè)備場(chǎng)景復(fù)制到另一個(gè)StretchDIBits將一幅與設(shè)備無(wú)關(guān)位圖的全部或局部數(shù)據(jù)直接復(fù)制到指定的設(shè)備場(chǎng)景8.API之繪圖函數(shù)AbortPath拋棄選入指定設(shè)備場(chǎng)景中的所有路徑。也取消目前正在進(jìn)行的任何路徑的創(chuàng)立工作AngleArc用一個(gè)連接弧畫一條線Arc畫一個(gè)圓弧BeginPath啟動(dòng)一個(gè)路徑分支CancelDC取消另一個(gè)線程里的長(zhǎng)時(shí)間繪圖操作Chord畫一個(gè)弦CloseEnhMetaFile關(guān)閉指定的增強(qiáng)型圖元文件設(shè)備場(chǎng)景,并將新建的圖元文件返回一個(gè)句柄CloseFigure描繪到一個(gè)路徑時(shí),關(guān)閉當(dāng)前翻開(kāi)的圖形CloseMetaFile關(guān)閉指定的圖元文件設(shè)備場(chǎng)景,并向新建的圖元文件返回一個(gè)句柄CopyEnhMetaFile制作指定增強(qiáng)型圖元文件的一個(gè)副本〔拷貝〕CopyMetaFile制作指定〔標(biāo)準(zhǔn)〕圖元文件的一個(gè)副本CreateBrushIndirect在一個(gè)LOGBRUSH數(shù)據(jù)結(jié)構(gòu)的根底上創(chuàng)立一個(gè)刷子CreateDIBPatternBrush用一幅與設(shè)備無(wú)關(guān)的位圖創(chuàng)立一個(gè)刷子,以便指定刷子樣式〔圖案〕CreateEnhMetaFile創(chuàng)立一個(gè)增強(qiáng)型的圖元文件設(shè)備場(chǎng)景CreateHatchBrush創(chuàng)立帶有陰影圖案的一個(gè)刷子CreateMetaFile創(chuàng)立一個(gè)圖元文件設(shè)備場(chǎng)景CreatePatternBrush用指定了刷子圖案的一幅位圖創(chuàng)立一個(gè)刷子CreatePen用指定的樣式、寬度和顏色創(chuàng)立一個(gè)畫筆CreatePenIndirect根據(jù)指定的LOGPEN結(jié)構(gòu)創(chuàng)立一個(gè)畫筆CreateSolidBrush用純色創(chuàng)立一個(gè)刷子DeleteEnhMetaFile刪除指定的增強(qiáng)型圖元文件DeleteMetaFile刪除指定的圖元文件DeleteObject刪除GDI對(duì)象,對(duì)象使用的所有系統(tǒng)資源都會(huì)被釋放DrawEdge用指定的樣式描繪一個(gè)矩形的邊框DrawEscape換碼〔Escape〕函數(shù)將數(shù)據(jù)直接發(fā)至顯示設(shè)備驅(qū)動(dòng)程序DrawFocusRect畫一個(gè)焦點(diǎn)矩形DrawFrameControl描繪一個(gè)標(biāo)準(zhǔn)控件DrawState為一幅圖象或繪圖操作應(yīng)用各式各樣的效果Ellipse描繪一個(gè)橢圓,由指定的矩形圍繞EndPath停止定義一個(gè)路徑EnumEnhMetaFile針對(duì)一個(gè)增強(qiáng)型圖元文件,列舉其中單獨(dú)的圖元文件記錄EnumMetaFile為一個(gè)標(biāo)準(zhǔn)的windows圖元文件枚舉單獨(dú)的圖元文件記錄EnumObjects枚舉可隨同指定設(shè)備場(chǎng)景使用的畫筆和刷子ExtCreatePen創(chuàng)立一個(gè)擴(kuò)展畫筆〔裝飾或幾何〕ExtFloodFill在指定的設(shè)備場(chǎng)景里,用當(dāng)前選擇的刷子填充一個(gè)區(qū)域FillPath關(guān)閉路徑中任何翻開(kāi)的圖形,并用當(dāng)前刷子填充FillRect用指定的刷子填充一個(gè)矩形FlattenPath將一個(gè)路徑中的所有曲線都轉(zhuǎn)換成線段FloodFill用當(dāng)前選定的刷子在指定的設(shè)備場(chǎng)景中填充一個(gè)區(qū)域FrameRect用指定的刷子圍繞一個(gè)矩形畫一個(gè)邊框GdiComment為指定的增強(qiáng)型圖元文件設(shè)備場(chǎng)景添加一條注釋信息GdiFlush執(zhí)行任何未決的繪圖操作GdiGetBatchLimit判斷有多少個(gè)GDI繪圖命令位于隊(duì)列中GdiSetBatchLimit指定有多少個(gè)GDI繪圖命令能夠進(jìn)入隊(duì)列GetArcDirection畫圓弧的時(shí)候,判斷當(dāng)前采用的繪圖方向GetBkColor取得指定設(shè)備場(chǎng)景當(dāng)前的背景顏色GetBkMode針對(duì)指定的設(shè)備場(chǎng)景,取得當(dāng)前的背景填充模式GetBrushOrgEx判斷指定設(shè)備場(chǎng)景中當(dāng)前選定刷子起點(diǎn)GetCurrentObject獲得指定類型的當(dāng)前選定對(duì)象GetCurrentPositionEx在指定的設(shè)備場(chǎng)景中取得當(dāng)前的畫筆位置GetEnhMetaFile取得磁盤文件中包含的一個(gè)增強(qiáng)型圖元文件的圖元文件句柄GetEnhMetaFileBits將指定的增強(qiáng)型圖元文件復(fù)制到一個(gè)內(nèi)存緩沖區(qū)里GetEnhMetaFileDescription返回對(duì)一個(gè)增強(qiáng)型圖元文件的說(shuō)明GetEnhMetaFileHeader取得增強(qiáng)型圖元文件的圖元文件頭GetEnhMetaFilePaletteEntries取得增強(qiáng)型圖元文件的全部或局部調(diào)色板GetMetaFile取得包含在一個(gè)磁盤文件中的圖元文件的圖元文件句柄GetMetaFileBitsEx將指定的圖元文件復(fù)制到一個(gè)內(nèi)存緩沖區(qū)GetMiterLimit取得設(shè)備場(chǎng)景的斜率限制〔Miter〕設(shè)置GetNearestColor根據(jù)設(shè)備的顯示能力,取得與指定顏色最接近的一種純色GetObjectAPI取得對(duì)指定對(duì)象進(jìn)行說(shuō)明的一個(gè)結(jié)構(gòu)GetObjectType判斷由指定句柄引用的GDI對(duì)象的類型GetPath取得對(duì)當(dāng)前路徑進(jìn)行定義的一系列數(shù)據(jù)GetPixel在指定的設(shè)備場(chǎng)景中取得一個(gè)像素的RGB值GetPolyFillMode針對(duì)指定的設(shè)備場(chǎng)景,獲得多邊形填充模式GetROP2針對(duì)指定的設(shè)備場(chǎng)景,取得當(dāng)前的繪圖模式GetStockObject取得一個(gè)固有對(duì)象〔Stock〕GetSysColorBrush為任何一種標(biāo)準(zhǔn)系統(tǒng)顏色取得一個(gè)刷子GetWinMetaFileBits通過(guò)在一個(gè)緩沖區(qū)中填充用于標(biāo)準(zhǔn)圖元文件的數(shù)據(jù),將一個(gè)增強(qiáng)型圖元文件轉(zhuǎn)換成標(biāo)準(zhǔn)windows圖元文件InvertRect通過(guò)反轉(zhuǎn)每個(gè)像素的值,從而反轉(zhuǎn)一個(gè)設(shè)備場(chǎng)景中指定的矩形LineDDA枚舉指定線段中的所有點(diǎn)LineTo用當(dāng)前畫筆畫一條線,從當(dāng)前位置連到一個(gè)指定的點(diǎn)MoveToEx為指定的設(shè)備場(chǎng)景指定一個(gè)新的當(dāng)前畫筆位置PaintDesk在指定的設(shè)備場(chǎng)景中描繪桌面墻紙圖案PathToRegion將當(dāng)前選定的路徑轉(zhuǎn)換到一個(gè)區(qū)域里Pie畫一個(gè)餅圖PlayEnhMetaFile在指定的設(shè)備場(chǎng)景中畫一個(gè)增強(qiáng)型圖元文件PlayEnhMetaFileRecord回放單獨(dú)一條增強(qiáng)型圖元文件記錄PlayMetaFile在指定的設(shè)備場(chǎng)景中回放一個(gè)圖元文件PlayMetaFileRecord回放來(lái)自圖元文件的單條記錄PolyBezier描繪一條或多條貝塞爾〔Bezier〕曲線PolyDraw描繪一條復(fù)雜的曲線,由線段及貝塞爾曲線組成Polygon描繪一個(gè)多邊形Polyline用當(dāng)前畫筆描繪一系列線段PolyPolygon用當(dāng)前選定畫筆描繪兩個(gè)或多個(gè)多邊形PolyPolyline用當(dāng)前選定畫筆描繪兩個(gè)或多個(gè)多邊形Rectangle用當(dāng)前選定的畫筆描繪矩形,并用當(dāng)前選定的刷子填充RoundRect用當(dāng)前選定的畫筆畫一個(gè)圓角矩形,并用當(dāng)前選定的刷子在其中填充SelectClipPath將設(shè)備場(chǎng)景當(dāng)前的路徑合并到剪切區(qū)域里SelectObject為當(dāng)前設(shè)備場(chǎng)景選擇圖形對(duì)象SetArcDirection設(shè)置圓弧的描繪方向SetBkColor為指定的設(shè)備場(chǎng)景設(shè)置背景顏色SetBkMode指定陰影刷子、虛線畫筆以及字符中的空隙的填充方式SetBrushOrgEx為指定的設(shè)備場(chǎng)景設(shè)置當(dāng)前選定刷子的起點(diǎn)SetEnhMetaF

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論