APP下载

VB编程在计算机教学管理中的应用

2015-04-16陈江

电脑与电信 2015年5期
关键词:键值编辑器注册表

陈江

(广东省林业职业技术学校,广东 广州 510520)

1 引言

在国家政策的大力扶持下,我校的教学条件得到了极大的改善,越来越多课程的教学可以选择在多媒体电脑室进行,使得教师的教学组织更加生动灵活,教学方法更加多样化,教学过程中的师生互动也更加多元化和有效。但在多媒体教学逐步普及的同时,学生对电脑的误操作、非法操作和修改也给计算机机房的管理和任课老师的教学带来了一些问题,主要表现在:

(1)在“控制面板”非法修改系统配置。

(2)因好奇、恶作剧擅自修改修改系统注册表。

(3)未经许可运行或安装第三方程序,这些第三方程序修改了系统注册表。

(4)在dos命令窗口,运行非法程序或对系统配置进行修改。

(5)运行组策略编辑器修改系统配置。

(6)修改本机IP地址以逃避教师机广播软件对学生非法操作和违纪行为的监控。

(7)使用感染了病毒和木马的U盘导致电脑室病毒传播,干扰、影响正常教学。

为了制止以上行为,维持正常的课堂教学秩序,保证任课老师的教学过程正常顺利进行,管理员通常在安装系统之后,修改注册表,禁用系统的相关功能,然后开启电脑的硬盘保护和恢复模块,使电脑在重启后能恢复初始设置。但对于管理员来说,修改注册表操作工作量较大,过程比较烦琐,同时,由于部分任课老师使用的教学软件需要开启部分或全部系统功能,虽然可以通过修改注册表恢复相关功能,但对于管理员来说,要临时通过修改电脑室每台主机的注册表及系统配置恢复相关功能,工作量大且容易出错。因此,机房管理员迫切需要一个工具,针对本校电脑室管理的实际需求,能快速地完成机房的统一配置,通过禁用系统的部分功能,防止学生对电脑的各种非法操作,同时在因教学要求需要临时开启部分功能或全部功能时能快速地恢复功能。针对机房管理员的管理需求,本人用VB编写了一个小型管理程序以实现上述功能,对VB编程在机房管理中的实际应用进行了一些有效尝试。

2 用户要求

机房管理员要求在单台主机上快速对系统部分功能进行限制,完成后将系统统一发送到各机房的其它主机,然后开启硬盘保护功能;需要临时启用系统被禁用的功能时,能通过多媒体广播软件将一个恢复程序发送到机房的各主机的硬盘上并静默执行。

3 程序所具有的功能

(1)管理员身份验证。

(2)禁用/启用MS-DOS命令模式。

(3)禁用/启用系统任务管理器。

(4)禁用/启用系统控制面板。

(5)禁用/启用系统注册表编辑器。

(6)禁用/启用系统组策略编辑器。

(7)禁止/允许修改系统网络设置。

(8)禁止/允许inf文件安装。

4 流程图

图1 流程图

5 程序设计

5.1 密码验证界面

管理员输入密码,密码正确则进入程序主界面,密码错误提示密码错误,退出程序。密码存放于access数据库文件pwd.mdb中,为防止密码泄露,将该文件重命名为pwd.dll,密码存储及验证过程进行md5加密处理。

图2 身份验证界面

End if

【说明】密码经过MD5加密后存入数据库,EncodeString函数用于将用户输入的密码字符串进行MD5加密后与数据库的密码值进行校验,因为MD5加密是唯一的且不可逆,因此即使打开数据库查看,也无法获取真正的密码。

5.2 主程序界面

图3 主窗体

5.2.1 WshShell对象

程序所实现的功能,都是通过读取/修改Windows注册表键值实现,本程序利用WshShell对象,读取并修改Windows注册表键值。Windows系统是一种脚本宿主,Wsh-Shell对象提供对本地Windows外壳程序的访问,它的ProgID为Wscript.shell,利用WshShell对象的以下方法可实现对Windows系统注册表的键值。

RegDelete 删除注册表中指定的键或值

RegRead 读取(返回)注册表中指定的键或值

RegWrite 写入(设置)在注册表中指定的键或值

5.2.2 读取、修改注册表键值的函数代码

用以下两个函数读取并修改注注册表键值

修改16进制类型键值修改字符串类型键值

【说明】参数regstr为字符串类,表示所要读取或修改的键值在注册表中的分支路径,regval表示所要写入的注册表键值。

5.2.3 功能实现代码

禁用MS-DOS命令提示符

注册表分支路径:reg_str="HKCUSoftwarePoliciesMicrosoftWindowsSystemDisablecmd"

键值(Dword)∶

regval=0 启用regval=2 禁用

禁用/启用任务管理器

注册表分支路径:reg_str="HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemdisabletaskmgr"

键值(Dword):

regval=0 启用

regval=2 禁用

禁用控制面板

注册表分支路径:reg_str=“HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerNoControlPanel"

注册表分支路径2:

reg_str2="HKCUSoftwarePoliciesMicrosoftWin -dowsNetwork ConnectionsNC_EnableAdminProhibits"

键值(Dword):

regval=1 禁用

regval=0 启用

禁用注册表编辑器

注册表分支路径:reg_str=“HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemDisableRegistry-Tools"

键值(Dword):

regval=0 启用

regval=1 禁用

禁用组策略编辑器

注册表分支路径:reg_str="HKCUSoftwarePoliciesMicrosoftMMCRestrictToPermittedSnapins"

键值(Dword):

regval=0 启用

regval=1 禁用

禁止inf文件安装

注册表分支路径:reg_str="HKLMSOFTWAREClasses.inf"

键值(字符串):

regval=”textfile” 禁用

regval=“inffile” 启用

禁用usb存储设备

Windows系统分配/隐藏驱动器盘符,用32位二进制数表示,第1位到第26位分别表示英文字母A~Z,为0表示盘符可分配,为1则盘符隐藏。第7位到第32位全为0。Window将此数值转换为16进制数后写入到注册表中以下分支路径中:

"HKEY_CURRENT_USERSoftwareMicrosoftWin -dowsCurrentVersionPoliciesExplorerNoDrives"

"HKEY_CURRENT_USERSoftwareMicrosoftWin -dowsCurrentVersionPoliciesExplorerNoViewOnDrive"

获取代表盘符状态的32位二进制数(字符串):

用函数getval将获取的字符串转换为整型数值:

5.2.4 快速恢复被禁用的功能

另外编写一个快速恢复程序restore.exe,功能为启用被禁止的所有功能及自动注销Windows,并使程序静默运行。

6 方案实施及说明

6.1 方案实施

管理员在一台学生机上,先禁用学生机的硬盘保护系统,进入Windows后,运行该程序,禁用全部或部分功能,将快速恢复程序restore.exe复制到c∶windowssystem32目录下,并重启学生机。

用学生机自带的分区网络对拷功能将C分区完整复制到机房的每一台学生机,最后开启学生机的硬盘保护系统。

6.2 说明

(1)本程序通过修改注册表实现对系统功能的限制,而能过手动修改注册表和编辑组策略能够开启被禁止的功能,因此当禁用部分功能时,必须确保注册表编辑器程组策略编辑器被禁止。

(2)通过隐藏盘符禁止学生机使用usb存储设备时,虽然可以在windows资源管理器中隐藏盘符,但在MS-DOS模式下仍能通过命令访问,因此最好将MS-DOS模式一并禁止。

(3)注册表编辑器可以通过inf文件安装开启,因此如果禁用注册表编辑器和组策略编辑器,最好同时禁用inf文件的安装功能。

(4)运行本程序时,先关闭360之类的系统保护软件,以防止这类件干扰程序的运行。

(5)需要恢复被禁用的功能时,管理员或任课老师在教师机多媒体教室软件用远程命令运行所有学生端的这个程序,自动注销,重新登录后,即可快速恢复所有被禁用的功能。

6.3 实际效果

管理员使用本程序进行机房学生机的系统配置及管理后,学生课堂上对系统的各种非法操作现象大大减少,上课用u盘看电影、玩游戏的现象得到了有效的遏止,因使用u盘造成病毒泛滥的情况得到控制,管理员维护工作简单快捷,达到了预期的效果。

猜你喜欢

键值编辑器注册表
司空见惯感觉烦 锁屏画面快走开
非请勿进 为注册表的重要键值上把“锁”
你距离微信创作达人还有多远?
车辆段收发车运行图编辑器的设计与实现
更上一层楼 用好注册表编辑器
一键直达 Windows 10注册表编辑高招
注册表的便捷用法
注册表值被删除导致文件夹选项成空白
注册表编辑器也玩“失忆”
学习器揭开注册表面纱