机房教学中学生电子版作业的收缴方法

2018-01-16 21:52阿里甫江·夏木西沙吾列提·拜开依
中国教育信息化·基础教育 2017年12期

阿里甫江·夏木西 沙吾列提·拜开依

摘 要:在机房教学中,无论采用哪种方式收缴电子资料,都难以避免学生相互抄袭或考试作弊。为了解决此问题,文章首先介绍了基于局域网的电子资料收缴思路,然后采用计算机编程语言编程实现了电子资料自动收缴及作弊检查程序。实践证明该程序安装使用方便,给机房教学工作带来极大的方便。

关键词:机房教学;电子资料;收缴;作弊检查

中图分类号:G431 文献标志码:B 文章编号:1673-8454(2017)24-0091-03

一、引言

随着信息技术的快速发展,计算机的作用不仅对社会产生了深刻的影响,而且对大学教学的影响也越来越深远,在大学教学计划里大量的信息技术相关课程不断出现,机房教学也就不可避免地成为了大学教学中的重要环节之一。

在机房教学环节中,经常需要收缴学生的电子版作业或上机考试资料,学生电子文件的管理一直是信息技术教师最为棘手而又必须面对的重要问题[1],处理得不好,教师就很难掌握学生的学习情况,影响教学质量。

二、问题分析

机房教学电子版资料的收缴方法不外乎于以下三种方式:

1.局域网方式

方法:学生可以通过机房的局域网功能把完成的文件复制到共享的教师机文件夹里,最后由教师整理收取[2]。

问题:此方法,虽然看似简单易用,但是由此而产生的问题是显然而见的。基于“共享”的特点,学生提交的全部文件资料显示在共享的文件里,而共享内的文件对于全体网络用户来说是可见和开放的,局域网中的任何人都能复制,并能通过网络操作打开、修改并删除,因此个人文件的完整性丝毫没有保障,一些居心不良的学生可能会利用这一漏洞对其他人的文件进行修改破坏,甚至盗窃别人的成果据为己有,难以避免学生相互抄袭或考试作弊。此外,随意存取不同的文件特别是一些与课堂学习无关的文件更是垃圾成堆,进一步加深管理的难度[3],这种行为会扰乱正常的课堂教学秩序,实为教学之遗憾。

2.U盘等移动存储介质方式

方法:学生可以通过U盘等存储介质,把完成的文件直接复制到教师机或教师的存储介质上[4]。

问题:移动存储介质虽很方便,对于机房教学和管理者却是个痛心疾首的东西。因为,学生使用移动存储介质携带游戏、影音文件,甚至携带各种恶意性软件或病毒,严重影响了机房计算机系统的正常运作和教育教学活动。因此,有些机房禁止学生使用移动存储介质。即使是能使用移动存储介质,但是学生一一进行文件复制操作,浪费时间,也难以避免学生相互抄袭。

3.互联网电子邮件方式

方法:通过开启机房的互联网,利用邮箱把电子资料发送到教师的邮箱,最后教师通过登录自己的邮箱下载收取学生的资料。

问题:此方法虽然可行,但是考试时互联网是关闭的,而且有些机房不具备互联网功能,无法通过电子邮件发送文件资料。

由上述分析可见,尽管利用现有的任何方法,而不利用针对性程序,都不能较好的解决机房教学中的电子资料收缴弊端。因此,本文以《局域网方式》为框架,通过编制简单的教师机程序,有效解决了机房学生电子资料收缴中的问题。

三、解决思路

机房一般都具备局域网,而加入此局域网,包括教师机在内的每台计算机都可以相互访问共享的资源[4]。因此,首先教师在教师机创建一文件夹并将其共享在局域网中(以下简称教师文件夹),然后通知学生进入教师机将完成的资料文件复制到教师文件夹中,最后在教师机安装一个能够监视文件夹变化的程序,由此程序及时发现复制的文件并将其及时移到没有共享的其它文件夹里,使得教师文件夹始终处于空白的状态,以便除教师以外的其他人员无法相互看到或复制。

从上述思路中可见,解决问题的关键是那个监视程序。这种文件夹监视程序网上可以找到,然而其功能只有简单地监视文件夹的变化,而不能自动移动文件资料,也没有作弊检查等功能。

以下介绍此监视程序开发过程。

四、开发过程

Visual Basic是一种由Microsoft公司开发的包含协助开发环境的事件驱动计算高级编程语言[5]。它具有掌握容易、应用简便、开发周期短等特点,是非专业程序开发者的理想工具[6]。本文利用Visual Basic 6.0(以下简称VB6)完成,以文件夹监视、文件移动和作弊检查为一体的局域网文件资料收缴程序(以下简称收缴程序)。

1.文件夹监视

文件夹监视是收缴程序的最重要功能。文件夹监视指的是程序能够监测指定文件夹里的文件加入(复制)、文件移除(删除)、文件更名、创建子文件夹等操作并触动相应的动作。文件夹监视不仅能够监测其根目录下的变化,还能够监测其子文件夹目录树里的变化。

通过调查研究发现,实现此功能的简单实用方法是利用Microsoft Scripting Runtime(scrrun.dll)庫中的File System Object(FSO)对象[7]。文件夹监视代码如下:

Private Function WatchFolder(wFolder As String)

Dim rFolder As Folder

Dim fName As String

On Error Resume Next

Set rFolder = FSO.GetFolder(wFolder)

For Each strSubFolderInrFolder.SubFolders

WatchFolder (strSubFolder.Path)

Next

DoEvents

For Each strFileInrFolder.Filesendprint

fName = wFolder + "\" + strFile.Name

‘监测到文件变化(fName),触动移动模块

Next

DoEvents

End Function

2.文件移动

文件夹监视模块触发文件夹变化动作并触动文件移动模块。

学生提交资料有时可能包括一个整体的文件夹及其里面的文件,简单地移动一个文件显然行不通。文件移动模块应该具备文件及其整体目录树结构的原样移动功能,即学生提交什么就原样复制什么。其代码如下[8]:

Public Function CopyFile(ByVal Source As String, ByVal Destination As String) As Boolean

If Me.FileExists(Destination) = False Then

CopyFile = CopyFileAPI(Source, Destination, 0)

Else

CopyFile = True

End If

CopyFile = CopyFileAPI(Source, Destination, 0)

Kill Source

End Function

3.作弊检查

一个Windows操作系统中的文件通常有创建时间、修改时间和访问时间等三个时间属性,而修改时间记录了此文件最后写入操作的时间,即日期、小时、分、秒[9]。因此,作弊检查的原理可以是:同一程序创建的两个文件,如果其修改时间和大小是相同的,则可以认为此两个文件是相同的,即此两个文件相互被复制,可以认定作弊。

实现此模块的关键问题是如何取得文件大小和修改时间。文件大小可以直接使用VB6的FileLen函数[10]获得,而修改时间则可以使用API函数GetFileTime[10],其代码如下:

Public Function getTime(Filename As String)

Dim hFile As Long, rVal As Long

Dim Buff As OFSTRUCT

Dim cTime As FILETIME

Dim mTime As FILETIME

Dim laTime As FILETIME

Dim sTime As SYSTEMTIME

hFile = CreateFile(FName, GEN_R,FSHARE_R

Or FSHARE_W, 0&, OEXIST, 0&, 0&)

If hFile Then

rVal = GetFileTime(hFile, cTime, laTime, mTime)

rVal = FileTimeToLocalFileTime(mTime, mTime)

rVal = FileTimeToSystemTime(mTime, sTime)

With sTime

gDate = .wYear& "-" & .wMonth& "-" & .wDay

gTime = .wHour& ":" & .wMinute& ":" & .wSecond

End With

getTime = Format(gDate, "yyyy-mm-dd") & ","&_Format(gTime, "hh:mm:ss")

End If

rVal = CloseHandle(hFile)

End Function

最后完成的收缴程序主界面如图1所示。

五、结束语

机房教学上机考试或作业资料的收缴过程中,无论采用局域网、移动存储介质和互联网,都难以解决学生相互抄袭或考试作弊。本文在局域网的基础上,结合计算机高级编程语言开发实现了作业收缴程序。程序只需在教师机上安装,即可自动完成学生电子文件资料的有效收缴。另外还具备了作弊检查功能,有效解决学生相互抄袭或考试作弊,给机房教学工作带来极大的方便。

参考文献:

[1]梁秀清,刘昊.浅谈机房课堂教学的管理[J].中国科教创新导刊,2011(19):229.

[2]林丽萍,黄群杰.浅析学校机房局域网的组建与管理[J].科技传播,2010,12(6): 209-210.

[3]李志刚.机房教学管理浅谈[J].职业教育,2008, 129(10):139-140.

[4]刘辉. 浅谈机房教学效率的提高[J].成才之路, 2007(27):41-42.

[5]刘瑞新,王远征.Visual Basic 程序設计教程[M].北京:机械工业出版社,2008.

[6]李天启. Visual Basic 6.0 学习捷径[M].北京:清华大学出版社,1999.

[7]David Barron.The World of Scripting Languages [M]. Wiley, 2000.

[8]David I. Schneider. Introduction of programming using visual basic 2010[M].北京:电子工业出版社, 2012.

[9]王钦.Visual Basic 6.0入门与提高[M].北京:人民邮电出版社,2002.

[10]Steven Roman. Win32 API Programming with Visual Basic [M]. O'Reilly & Associates, 1999.

(编辑:鲁利瑞)endprint