馬全來
摘 ?要:利用Delphi7.0 的Socket網(wǎng)絡(luò)組件及TCP/IP協(xié)議等技術(shù)通過主機(jī)對局域網(wǎng)內(nèi)工作的計算機(jī)信息的獲取,對操作人員的非法操作加以警示,控制網(wǎng)內(nèi)計算機(jī)等操作等功能.
關(guān)鍵詞:居域網(wǎng)監(jiān)控;Delphi;Winsock;TCP/IP;Socket網(wǎng)絡(luò)組件
1 局域網(wǎng)系統(tǒng)的工作原理
局域網(wǎng)計算機(jī)終端控管理制軟件普遍采取的是Client/Server模式(即客戶端/服務(wù)器模式),因此軟件一般分為兩大模塊:其一服務(wù)器端程序,運行在管理人員正在使用的計算機(jī)(監(jiān)控端)上,將管理人員所需要執(zhí)行的操作編譯成指令,發(fā)送給被監(jiān)控端程序執(zhí)行,同時還要接收被監(jiān)控端發(fā)送來的反饋信息。除了服務(wù)器端外,還要有一個客戶端程序,運行在所要進(jìn)行控制的計算機(jī)(被監(jiān)控端)上,它的主要工作是接收從服務(wù)器端發(fā)送來的指令碼,根據(jù)事先約定的協(xié)議,將指令碼翻譯執(zhí)行。除此還要捕捉監(jiān)控計算機(jī)發(fā)來信息。由此可見開發(fā)局域網(wǎng)計算機(jī)終端控制管理可分為對監(jiān)控端與被監(jiān)控端的開發(fā)。
2 關(guān)鍵技術(shù)
2.1 理解Socket
Sockets最初是UNIX系統(tǒng)中最重要的網(wǎng)絡(luò)通信接口,后來Microsoft Windows與1992年將其移植到Windows Sockets規(guī)范,稱為Winsock,版本為1.0。后Winsock經(jīng)過兩次修改,分別變?yōu)榘姹?.1和2.0。Windows系統(tǒng)包含了針對網(wǎng)絡(luò)編程的接口,既Winsock API,該接口包括一組I/O及獲取網(wǎng)絡(luò)信息的庫函數(shù),應(yīng)用程序通過調(diào)用Win32 API函數(shù)編程實現(xiàn)所需功能。Winsock庫函數(shù)包含于Winsock.dll動態(tài)連接庫中(Winsock1.1包含與該文件中,Winsock2.0則是文件ws2_32.dll)。
Winsock發(fā)布時是針對C和C++的,主要由Winsock.h和Winsock.dll組成。使用Delphi進(jìn)行開發(fā)時,相應(yīng)文件為Winsock.pas。Delphi對Windows Sockets API進(jìn)行了封裝,使得Winsock編程變的容易。Delphi7中提供了1個服務(wù)器Soket組件TCPServer和1個客戶機(jī)Socket組件TCPClient,以及1個支持無連接Socket的UdpSocket組件。
2.2 Win32 API編程
Win32 API即為Microsoft 32 位平臺的應(yīng)用程序編程接口(Application Programming Interface)。其函數(shù)分為窗口管理、圖形設(shè)備接口、系統(tǒng)服務(wù)、國際特性、網(wǎng)絡(luò)服務(wù)五大類。所有在Win32 平臺上運行的應(yīng)用程序都可以調(diào)用這些函數(shù)。
標(biāo)準(zhǔn)Win32 API函數(shù)分為以下五大類:
(1)窗口管理
窗口管理函數(shù)向應(yīng)用程序提供了一些創(chuàng)建和管理用戶界面的方法。
常見的窗口管理函數(shù)有窗口函數(shù)、鍵盤函數(shù)、消息和消息隊列、多文檔接口函數(shù)等。窗口管理函數(shù)還提供了一些與窗口有關(guān)的特性,比如插入標(biāo)記、剪貼板、光標(biāo)、鉤子、圖標(biāo)以及菜單等函數(shù)。
(2)圖形設(shè)備接口
圖形設(shè)備接口(GDI)提供了一系列的函數(shù)和相關(guān)的結(jié)構(gòu),應(yīng)用程序可以使用圖形設(shè)備接口提供的函數(shù)在顯示器、打印機(jī)或其它設(shè)備上生成圖形化的輸出結(jié)果。
常用的圖形設(shè)備接口有位圖函數(shù)、筆刷函數(shù)、剪裁函數(shù)、顏色函數(shù)、坐標(biāo)空間及映射函數(shù)、設(shè)備映射函數(shù)、設(shè)備環(huán)境函數(shù)、填充圖形函數(shù)、字體和文本函數(shù)、直線和曲線函數(shù)、畫筆函數(shù)等。
(3)系統(tǒng)服務(wù)
系統(tǒng)服務(wù)函數(shù)為應(yīng)用程序提供了訪問計算機(jī)資源以及底曾操作系統(tǒng)特性的手段,比如訪問內(nèi)存、文件系統(tǒng)、設(shè)備、進(jìn)程和線程。應(yīng)用程序使用系統(tǒng)服務(wù)函數(shù)來管理和監(jiān)視其所需要的系統(tǒng)資源。系統(tǒng)服務(wù)函數(shù)提供了訪問文件、目錄以及輸入輸出(I/O)設(shè)備的手段,應(yīng)用程序使用文件I/O函數(shù)可以訪問保存在指定計算機(jī)以及網(wǎng)絡(luò)上的磁盤和其他存儲設(shè)備上的文件和目錄。
常見的系統(tǒng)服務(wù)函數(shù)包括訪問控制函數(shù)、原子函數(shù)、剪貼板函數(shù)、通訊函數(shù)、控制臺函數(shù)、管道函數(shù)、調(diào)試函數(shù)、動態(tài)數(shù)據(jù)交換函數(shù)、錯誤函數(shù)、文件函數(shù)、鉤子函數(shù)等。
(4)網(wǎng)絡(luò)服務(wù)
網(wǎng)絡(luò)函數(shù)允許網(wǎng)絡(luò)上的不同計算機(jī)的應(yīng)用程序之間進(jìn)行通訊。用于在網(wǎng)絡(luò)中的各計算機(jī)上創(chuàng)建和管理共享資源的連接,例如共享目錄和網(wǎng)絡(luò)打印機(jī)。
網(wǎng)絡(luò)接口包括Windows網(wǎng)絡(luò)函數(shù)、Windows套接字(Socket)、NetBIOS、RAS、SNMP、Net函數(shù)以及網(wǎng)絡(luò)DDE。
2.3 Delphi 7.0編程技術(shù)分析
Delphi與面向?qū)ο蟮腜ascal語言結(jié)臺在一起,使用Delphi可以在撮短的時間里建立起快速、直觀、強(qiáng)大的Windoow應(yīng)用程序,Delphi的特點如下:
(1)可視化開發(fā)環(huán)境
開發(fā)圖形用戶界面時,不需編寫大量的程序代碼以描述界面的外觀特點,而只需把所需的組件加入窗體相應(yīng)的位置即可。
(2)豐富的VCL
VCL是Delphi重要的組成部分,包含多種類別的組件也允許添加第三方控件。
(3)面向?qū)ο蟮奶匦?/p>
面向?qū)ο蟪绦蛟O(shè)計OOP(Object-Oriented Programming)是Delphi誕生的基礎(chǔ)。OOP立意于創(chuàng)建軟件重用代碼,具備更好的模擬現(xiàn)實世界環(huán)境的能力。Delphi是完全面向?qū)ο蟮模珼elphi提供了一個真正的OOP擴(kuò)展的可視化編程環(huán)境,使得可視化編程與面向?qū)ο蟮拈_發(fā)框架緊密的結(jié)合起來。
(4)高效的編譯器
Pascal編譯器以編譯速度而著名,delphi真正建立在此基礎(chǔ)上的,Delphi針對Windows系統(tǒng)的最快的高級語言本地代碼編譯器。
3.結(jié)論
利用Delphi網(wǎng)絡(luò)通信 Socket技術(shù)及面向?qū)ο笠约癟CP/IP協(xié)議等技術(shù)對局域網(wǎng)內(nèi)計算機(jī)信息的獲取、控制及管理。向網(wǎng)內(nèi)計算機(jī)發(fā)布通知,通過調(diào)用Win32 API函數(shù)對網(wǎng)內(nèi)計算的監(jiān)督、控制、警示及網(wǎng)內(nèi)計算機(jī)信息的提取等功能,其優(yōu)點是充分利用了現(xiàn)有的局域網(wǎng)資源和廣域網(wǎng)資源。
參考文獻(xiàn)
[1] 秦玉華.局域網(wǎng)監(jiān)控系統(tǒng)的開發(fā)[J].肇慶學(xué)院學(xué)報,2007,(02)
[2] 費仁元,王民.基于C/S模式的企業(yè)局域網(wǎng)監(jiān)控系統(tǒng)[J].北京工業(yè)大學(xué)學(xué)報,2004,(02).