《局域网监控系统的开发.pdf》由会员分享,可在线阅读,更多相关《局域网监控系统的开发.pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、局域网监控系统的开发T h eD e v e l o p m e n to ft h eL o c a lA r e aN e t w o r kM o n i t o r i n gS y s t e m秦玉华+Q mY u h u a摘要本系统利用D e t p h i 的S o c k e t 网络组件及T C P I P 协议等技术设计了一个通过主机对局域网内工作计算机进行监督控制的局域网监控系统,实现了网内计算机的实时监督、获取计算机信息、对操作人员的非法操作加以警示、控制网内计算机等功能。关键词局域网监控D e 如机W i n s o c k 龙P,PS o c k e t 组件A
2、 b s t r a c tT h i ss y s t e md e v e l o p sal o c a la r e an e t w o r km o n i t o r i n gs y s t e mb a s e do nt h eS o c k e tc o m p o n e n ti nD e l p h ia n dT C P I Pp r o t o c 0 1 I tC a nm o n i t o ra n dc o n t r o lt h en e tw o r k g r o u pc o m p u t e r st h r o u g hah o s t
3、c o m p u t e r I tr e a l i z e st h es u r v e i l l a n c eo fn e t w o r kc o m p u t e r si nr e a l t i m e F u n c t i o n ss u c ha sg a i n i n gt h ec o m p u t e r si n f o r m a t i o n,a l e r t i n go p e r a t o r i l l e g a lo p e r a t i o n,a n dc o n t r o l l i n gt h ec o m p u
4、 t e r si nt h en e t w o r ka r ea l s oi m p l e m e n t e d K e y w o r d sL A Nm o n i t o r i n gs y s t e mD e l p h iW i n s o c kT C P I PS o c k e tc o m p o n e n t1引言2 0 世纪9 0 年代以来,随着科学技术的迅速发展,人们的生产行为、生活方式都发生了重大的变化,作为生活生产中非常重要的一项技术即监控技术的重要性正在逐渐被人们所认识和重视。随着计算机局域网的普及,使用监控软件在网络管理中进行监督控制也越来越重
5、要。而监控软件配置简单、使用方便灵活,充分利用局域网资源进行数据的传输、发送控制的特点也是其发展迅速的原因之一。本局域网监控系统,具备了监控系统应有的监督与控制功能,实现了对局域网内计算机的监督、控制、警示,可以获取局域网内计算机的信息(如:I P 地址、主机名称、I P 地址类型等),具备了一个局域网监控系统所必备的功能。2 设计方案本监控系统可以简单的分为:监控端与被监控端,主要通过D e l p h i 中的T c l i e n t S o c k e t 和T s e r v e r S o c k e t 组件设计而成。监控端又可以分为:连接部分、接收部分、信息获取部分、广播运用部
6、分、和计算机控制部分等5 部分,包括:立即抓图、自动捕捉图像、发送广播信息、客户机信息的获取、计算机的控制、图像的保存等6 大功能。被监控端对应于监控端则可进一步细化为:连接响应部分、屏幕截图部分、本机信息获取部分、广播信息接收部分和计算机控制响应部分5 大模块,均通过对被监控端F o r m C r e a t e 事件进行编程来实现。而为了被监控机可以在监控程序 青岛科技大学信息科学技术学院山东青岛2 6 6 0 6 1开启的情况下可以正常的进行工作,又对被监控端进行了非正常窗口设计,并将其从T a s k b a r 中隐藏以方便计算机应用者可以不受其影响进行工作。其各部分关系如图1 所
7、示:图1 模块关系图首先监控端(图2)通过I P 地址与被监控端进行连接,看该计算机的被监控程序是否启动或是否开机;如果计算机已启动且程序已开机,则可以对其选择进行实时监控还是随机监控,同时,可以获取其计算机信息。在此基础上可以进一步对其发送广播警示信息或者对其进行计算机控制,已达到监督的效果和目的。而被监控端则通过获取监控端发送的命令信息做出相应的响应,以配合监控端的命令指示,完成监控端的监控要求。3实现过程3 1 屏幕的抓取与显示在监控端发送屏幕抓取命令g i v e m e,C l i e n t S o c k e t l S o c k e t S e n d T e x t(g i
8、 v e m e);当被监控端接收到监控端所发命令符g i v e m e 后在其F o r m C r e a t e 事件调用抓图函数G e t d c至Q Q z 垒篁至塑皿 万方数据():g e t S c r e e n H a n d l e:=G e t d c(H w n d D e s k t o p);取得当前屏幕图象然后对其进行转换并写入流中,进行发送:j P g S a v e T o S t r e a m(m e m o R e a d S t r);将J P G 图像写入流中s o c k e t s e n d S t r e a m(M e m o R e a
9、 d s t r);发送图像图2 监控端F i g u r e2M o n i t o r i n gt e r m i n a l在监控端,通过对C l i e n t S o c k e t 的R e a d 事件进行图像的显示。设置接收缓冲区的大小,设置需接收的字节数,向被监控端发送接收请求,接收数据,将流数据读至J P G 图像对象,进行图像转换,最后是图像的显示:B u f f e r:a r r a y 0 1 0 0 0 0 o fb y t e;设置接收缓冲区大小s e n d l e n:=S t r T o I n t(S o c k e t R e c e i v e T
10、 e x t);设置需接收的字节数C l i e n t S o c k e t l S o c k e t S e n d T e x t(o k!);向被监控端发出请求l e n:=s o c k e t R e c e i v e L e n g t h;读出数据包长度s o c k e t R e c e i v e B u f(b u f f e r,l e n);接收数据包m e m o r e a d W r i t e(b u f f e r,l e n);i fm e m o r e a d S i z e s e n d l e nt h e n 接收完毕j P g I _
11、 o a d F r o m S t r e a m(m e m o r e a d);将流数据读至J J P G图象对象b m p A s s i g n(j p g);将J P G 转换为B M Pi m a g e l P i c t u r e B i t m a p A s s i g n(b m p);显示图片3 2 客户机信息的获取首先,在监控端发出获取客户机信息的c o n n e c t 命令:C l i e n t S o c k e t l S o c k e t S e n d T e x t(c o n n e c t):之后在被监控端的F o r m C r e r
12、 a t e 事件中调用本机信息的提取函数G e t H o s t B y N a m e(),进行本机I P 地址、本机名称及类型的获取:h o s t:=g e t h o s t b y n a m e(b u f f e r 1 );获取主机的各信息m i n g c h e n g:=h o s t h _ n a m e;将主机名赋值给m i n g c h e n gl e i x i n g:=c h r(h o s t h _ a d d r t y p e+6 4);I P 类型的赋值I P 地址的获取和赋值f o ri:=1t o4d ob e g i ni p:=i
13、n t t o s t r(o r d(h o s t h _ a d d r i 一1 );i fi 4t h e ni p s t r:=i p s t r+i p+:7E l s ed i z h i:=i p s t r+i p;e n d;当这些准备工作完成后,就是向监控端的发送,主要借助I d U D P C I i e n t 和I d U D P S e r v e r 控件来实现:s a y:=I P 地址为:+d i z h i+客户机名称:+m i n g c h e n g+地址类型:+l e i x i n g;s e t l e n g t h(s t r,l e
14、n g t h(t r i m(s a y);动态设置s t r 长度f o ri:=0t ol e n g t h(t r i m(s a y)一1d o 将数据送给数组s t r i :=p c h a r(c o p y(s a y,i+1,1)“;i d u d p c l i e n t l S e n d B u f f e r(s t r 0】,l e n g t h(s t r);用U D P发主机信息最后则是监控端的接收,通过I d U D P S e r v e r 控件的R e a d事件进行接收:a d a t a R e a d B u f f e r(s t r,a
15、 d a t a S i z e);收到的数据读入数组中3 3 广播信息的发送与接收对客户机信息的获取发送,借助了广播信息发送与接收的原理来实现监控端与被监控端的交互的,只是广播信息发送和客户机信息提取所用端口号不同。首先将二者的端口号P o r t 值罗列如下:i d u d p c l i e n t l P o r t:=5 0 0 0;i d u d p s e r v e r l P o r t:=5 0 0 0;将广播发送端口号P o r t 设为5 0 0 0。i d u d p c l i e n t l P o r t:=6 0 0 0:i d u d p s e r v e
16、 r l P o r t:=6 0 0 0;获取主机信息的端口号设为6 0 0 0。I d U D P C I i e n t 和I d U D P S e r v e r 二者的P o r t 属性必须一致,否则无法进行二者的连接和发送。其发送过程是在监控端通过对E d i t 的K e y P r e s s 事件进行编程,当键盘事件为输入E n t e r 键时执行广播信息的发送过程,即执行i d u d p c l i e n t 的S e n d B u f f e r()函数,其主要代码如下:i fk e y=#1 3t h e nb e g i ns a y:2e d i t 2
17、 T e x t;s e d e n g t h(s t r,l e n g t h(t r i m(s a y);动态设置s t r 长度f o ri:=0t ol e n g t h(t r i m(s a y)一1d o 将数据送给数组s t r i :=p c h a r(c o p y(s a y,i+1,1);i d u d p c l i e n t l S e n d B u f f e r(s t r 0 ,l e n g t h(s t r);用U D P发文字e d i t 2 T e x t:=2 清空e d i t 2e n d;其接收过程则通过对被监控端的I d U
18、 D P S e r v e r 的R e a d 万方数据事件进行编程得以实现,最后通过S h o w M e s s a g e()函数在被监控端显示出来,具体过程如下:a d a t a R e a d B u f f e r(s t r,a d a t a S i z e);收到的数据读入数组中f o ri:=0t oa d a t a S i z e 一1d ot x t:=t x t+s t r i ;存给T x Ts h o w m e s s a g e(t x t);利用s h o w m e s s a g e()函数通过提示消息显示警示语3 4 客户机的控制3 4 1 客
19、户机的锁定首先,由监控端发出锁机命令L o c k 给被监控端的S e r v e r-S o c k e t:C l i e n t S o c k e t l S o c k e t S e n d T e x t(l o c k);在被监控端,通过对S e r v e r S o c k e t 的R e a d 事件进行编程,调用W i n s o c k 的E x i t W i n d o w s E x()函数,进行锁机操作,其主要的实现过程为:i fS=l o c k t h e nb e g i nO p e n P r o c e s s T o k e n(G e t C
20、 u i T e n t P r o c e s s(),T o k e n A d j u s t p r i v i l e g e so rT o k e n q u e r y,h t o k e n);L o o k u p P r i v i l e g e V a l u e(n i l,S e S h u t d o w n P r i v i l e g ejt k p P r i v i l e g e s 0 L u i d);t k p P r i v i l e g e C o u n t:=I;设定权限为1t k p P r i v i l e g e s 0 A
21、t t r i b u t e s:=S E _ P R I V I L E G E E N A B L E D;A d j u s t T o k e n P r i v i l e g e s(h T o k e n,f a l s e,t k p,0,n i l,r r);得到权限E x i t W i n d o w s E x(E W X L O G O F F,0);锁定计算机e n d;3 4 2 客户机的重启和关闭重启和关闭同锁定的原理类似,只不过在调用E x i t W i n d o w s E x()函数时参数的设置有所不同。E x i t W i n d o w s E
22、 X(E W X R E B O O TO RE W X P O W E R O F F,O-I i,4 t【I-”,h i-r i i 一_ I i I i l,i l,i l i i(上接第1 1 0 页)分方便,这些都大大缩短了电路系统的开发周期,为电路设计者提供了一种全新的电路设计方法,因而在工程领域也必将得到更广泛的应用。参考文献:1 杨刚,龙海燕现代电子技术一V H D L 与数字系统设计电子工业出版社,2 0 0 4 2 王振红V H D L 数字逻辑电路设计与应用实践教程北京:机械工业出版社,2 0 0 3 6 0);重启计算机E x i t W i n d o w s E X
23、(E W X S H U T D O W NO RE W X P O W E R O F F,0);关闭计算机3 4 3 客户机的实时监控为了达到实时监控的目的,可通过设置T i m e r l 的O n T i m e r 事件来完成,设置T i m e r l 的O n T i m e r 事件为立即捕捉按钮的O n C l i c k 事件即可,即发送捕捉请求字符串g i v e m e:C l i e n t S o c k e t l S o c k e t S e n d T e x t(g i v e m e);发出捕捉请求同时可通过对下拉菜单C o m b o B o x l
24、的h e m I n d e x 属性的设置使T i m e r l 的I n t e r v a l 属性改变,来控制自动捕捉的间隔时间:i fc o m b o b o x l I t e m l n d e x=0t h e nt i m e r l I n t e r v a l:=1 0 0 0;当选中1 秒时4 结论本局域网监控系统充分利用了D e l p h i 网络编程的知识、网络通信S o c k e t 技术及面向对象等软件技术,实现了对与局域网内计算机的监督、控制、警示及网内计算机信息的提取等功能,其优点是充分利用了现有的局域网资源和广域网资源,以信息的实时获取和实时控制
25、为中心,实现信息、资源及任务的综合共享和全局一体化的管理。参考文献:1 钟军等编著D e l p h i 网络通信协议分析与应用实现 M 北京:人民邮电出版社,2 0 0 3 1 2 3 2 施新刚等编著D e l p h i 实效编程百例 M 北京:人民邮电出版社2 0 0 4 9 5 1 4 5 3 萧秋水,文娟编著W i n d o w s 网络编程之D e l p h i 篇 M 北京:清华大学出版社,2 0 0 1 1 7 2 1 4 M u r t y,K a t t aG N e t w o r kP r o g r a m m i n g M E n g l e w o o d
26、C l i f f sP r e n t i c eH a l l I n c 1 9 9 2 1 7 9 8(收稿日期:2 0 0 6 0 9 0 5)3 潘松,王国栋V H D L 实用教程成都:成都电子科技大学出版社,2 0 0 0 4 求是科技V H D L 应用开发技术与工程实践北京:人民邮电出版社2 0 0 3 5 王振红,王仲基于V H D L 的智能函数发生器设计微电子技术,2 0 0 3 1 :3 1 3 4 作者简介宗荣芳(1 9 7 4 一),女,讲师,现工作于淮海工学院电子工程系,主要从事电子方面的教学工作。(收稿日期:2 0 0 6 0 8 一0 8)万方数据局域网监
27、控系统的开发局域网监控系统的开发作者:秦玉华,QIN Yu-hua作者单位:青岛科技大学信息科学技术学院,山东青岛,266061刊名:信息技术与信息化英文刊名:INFORMATION TECHNOLOGY&INFORMATIZATION年,卷(期):2007,(2)引用次数:2次 参考文献(4条)参考文献(4条)1.钟军 Delphi网络通信协议分析与应用实现 20032.施新刚 Delphi实效编程百例 20043.萧秋水.文娟 Windows网络编程之Delphi篇 20014.Murty Katta G Network Programming 1992 相似文献(2条)相似文献(2条)1
28、.期刊论文 邬彦辉.徐建军.乔玉坤 局域网监控系统软件的开发-轻工机械2003,(1)介绍了利用delphi5.0开发的局域网管理软件.其基本要求是通过装载在服务器端的服务程序监视局域网中的任意一台计算机,包括监视其屏幕、向其发送文字信息、控制其关机及黑屏等操作.另外,要求客户机只有在收到服务器发送的特定指令时才能进行操作,否则关机或锁定键盘和鼠标.本开发程序使用的NMUDP控件,采用UDP协议进行数据通讯,从而实现了上述主要功能.2.期刊论文 韩锐.HAN Rui 基于NT的实验室监控系统-电脑知识与技术(学术交流)2007,2(8)本论文主要阐述了基于NT的局域网监控系统软件的开发,这里是
29、在实验室的环境下来实现的.这套监控软件以Delphi 6作为开发工具,采用C/S编程模式,分为服务器软件和客户端软件两部分,本地客户机安装客户端软件,完成往服务器传送用户名和域名的功能;安装在监控端的服务器软件利用NT系统的管理策略使客户机一开机便自动运行客户端软件,并完成数据库查询、插入操作及日常维护等工作.位于同一局域网内的服务器和客户机之间采用Delphi6的TServerSocket、TClientSocket控件完成数据交互功能.引证文献(2条)引证文献(2条)1.韩红章.王波 局域网内计算机活动监控系统的设计与实现期刊论文-电脑知识与技术 2008(35)2.郭文远.刘燕.贾金楼 地市级气象部门网络故障监控报警的研究和应用期刊论文-气象水文海洋仪器 2009(4)本文链接:http:/