电子作业收发自如 浙江省义乌市第四中学 〖摘要〗《信息技术》课堂中如何便捷的实现作业的收发一直是信息技术教师渴 求解决的一个问题,该文较详细地介绍了如何用 VB ACCESS结合,开发出一个既 能便捷实现作业收发,又能将学生上传的作业自动分类存放的基于C/S 结构的电子作业 收发系统。 〖关键字〗 电子作业 收发 结构VB ACCESS 电子作业是指在信息化教学的环境中,学生按照教师的要求,在课堂上即时完成或 课后完成的数据文件,如XLS 文件、网页文件、PSD 文件、FLA 文件等等。 在《信息技术》教学中,电子作业收发是影响课堂教学有效性的一个很重要环节。 怎样在较短的时间内将作业分发给学生和快速、安全地回收学生的作业是每一个信息技 术教师都渴求解决的一个问题。 一、常规方法及弊端 分发作业文件有比较简易可行的方法,可用电子教室软件的“传送文件”功能来实 现,这里不再多说。而上传文件则没这么简单,一般采用以下方法: 1、教师机上设置共享文件夹,让学生先将待上传的文件或文件夹以学生的姓名或学 号命名,然后通过网上邻居访问教师机,再复制粘贴实现上传; 2、在教师机或服务器上开启FTP 服务,让学生通过FTP 上传作业; 以上方法虽能实现作业上传功能,但大家都很清楚,其安全性不是很高,学生通过 简单的方法,就能实现抄袭作业;并且一些学生经常忘记重命名文件就上传,使得一些 早上传的文件被替换,不利于教师对学生学习情况的了解。 经过一段时间的摸索,本人用VB 编程、ACCESS 作后台数据库开发了一个基于C/S 结构的电子作业系统,成功实现了作业的收发功能,并且师生操作起来简便、安全(不 容易作弊)。 二、程序的功能及原理 1、分发作业:类似于一些考试系统,学生通过输入自己的学号登录,登录后系统 就在学生机的指定路径(如D 盘)下创建一个以学号为名的考生文件夹。然后学生从主 菜单中单击对应的章节及练习名称,系统就自动将作业文件从服务器复制到考生文件夹 下并将主文件名重命名为学生的姓名。 2、回收作业:学生只要单击“上交作业”按钮,就可实现将作业文件(或文件夹) 复制到服务器的作业文件夹的相应章节和班级文件夹下。 说明:该程序只放在服务器端,学生机上只是创建一个该程序文件的快捷方式,这样程序如要修改,只须修改服务器端程序即可。 三、软硬件要求: 硬件:除学生机、教师机外还要有一台配置稍好的电脑当服务器; 软件:学生机、教师机操作系统可以是WIN98、WIN2000 或WINXP;服务器操作 系统装WIN2000 SERVER WIN2003SERVER; 四、程序的编写 (一)、创建数据库及数据表 1、数据库名:students.mdb 2、表名:main 3、main 表的结构如下 字段名 数据类型 学号 文本 班级 文本 姓名 文本 4、将所有学生的对应信息添加到main (二)、程序内容:整个程序由以下窗体构成:登录窗体、主界面窗体及各练习窗体。 1、登录窗体 (load.frm) MicrosoftScripting Runtime (FilesystemObject 对象所必须) MicrosoftActivex Data Objects 2.0 library (数据库连接所必须) (2)、在窗体中添加如下图所示对象并设置对象名称: Lbl_xh Lbl_xm cmd_确定1 cmd_确定2 cmd_退出 Txt_xm Txt_xh 、将lbl_xm、txt_xm、和cmd_确定2 对象的visiable 属性设为false; 、将按钮“确定1”和“确定2”重合。 (3)、代码如下: Public fs NewFileSystemObject Public conn NewADODB.Connection Public xh String„学号 Public xm String„姓名 Public bj String„班级 Public zuoye_path String„服务器端存放学生上交作业的路径 Public server_IP String„服务器IP 地址 Public kaosheng_folder String„客户端考生文件夹的路径 Private Sub Form_Load() server_IP "192.168.1.8"mdb_file "\xxjslx_mdb$\students.mdb"zuoye_path "\zuoye$"conn.Open "provider=microsoft.jet.oledb.4.0;data source=" mdb_fileEnd Sub Private Sub cmd_确定1_Click() xh frommain where 学号='" Setrs Truetxt_xm.Visible TrueCmd_确定2.Visible Truecmd_确定1.Visible Falsecmd_重输.Visible TrueCmd_确定2.Default Truexm rs("姓名")bj rs("班级")rs.Close txt_xm.Text xmElse MsgBox "无效学号,请核对" End EndSub Private Sub Cmd_确定2_Click() kaosheng_folder fs.CreateFolder(kaosheng_folder) UnloadMe main.Show conn.Close End Sub Private Sub Cmd_重输_Click() txt_xh.Text Falsetxt_xm.Visible FalseCmd_确定2.Visible Falsecmd_确定1.Visible Truecmd_重输.Visible Truecmd_确定1.Default TrueEnd Sub Private Sub Cmd_退出_Click() conn.Close End End Sub 2、主界面窗体 (main.frm) 添加如下图所示对象(这里以“EXCEL 操作”子菜单为例) (2)、代码如下: Public lx_name String„练习名称 Private Sub exc_LX1_Click() lx_name "xls_LX1"Unload Me frm_excel.Show End Sub Exc_LX1 Exc_LX2 Exc_LX11 这里省略excel_练习2到excel_练习10 的代码 Private Sub exc_LX11_Click() lx_name "xls_LX11"Unload Me frm_excel.Show End Sub Private Sub ps_lx1_Click() Unload Me lx_name "ps_lx1"frm_photoshop.Show End Sub 这里省略photoshop_练习2到photoshop_练习8 的代码 Private Sub ps_lx9_Click() Unload Me lx_name "ps_lx9"frm_photoshop.Show End Sub 这里省略FLASH_练习和INTNET练习的代码 3、练习窗体 一般来讲,一个章节(或题型)要对应一个窗体。下面以 EXCEL 题型窗体 (frm_excel.frm)为例: (1)、添加如下图所示窗体对象: 如某一练习在一堂课内无法完成,那么在这里可再添加一按钮和设置相应代码,实现将上堂课上交的作业取回再继续答题。 (2)、代码如下: Dim kaosheng_file String„客户端的作业文件名 Dim source_file String„服务器端的原始作业文件名 Dim zouye_path2 String„服务器端存放作业的文件夹路径 Text1 jiaojuan PrivateSub Form_Load() 以下代码实现作业的分发source_file ".\excel\excel_LX1.xls"kaosheng_file =load.kaosheng_folder load.fs.CopyFilesource_file, kaosheng_file, True Msgbox “作业文件已下载,请到D:\” “文件夹下打开”End "请按各工作表中的题目要求答题"End Sub Private Sub jiaojuan_Click() „以下代码实现作业的回收 zuoye_path2 load.fs.CreateFolder(load.zuoye_path main.lx_name)End load.fs.CreateFolder(zuoye_path2) End Load.fs.CopyFilekaosheng_file, zuoye_path2 “\”,TrueMsgbox “作业上交成功” Unload Me main.Show End Sub (三)、打包 将上述程序打包生成 exe 文件,如xxjslx.exe 五、程序的安装及使用 (一)、服务器端设置 (1)、将欲分发给学生的作业文件(或文件夹) 与xxjslx.exe 文件放在source 文件夹下,并将其设置 为共享,权限为everyone 只读; (2)、将数据库文件所在的文件夹 xxjslx_mdb 设置为共享,共享名为xxjslx_mdb$,权限为everyone 可写; (3)、将用来存放学生作业的文件夹zuoye 设置 为共享,共享名为zuoye$,权限为everyone 可写; 注:、在共享名中加入$ ,是为提高安全性,这 样的共享在网上邻居中是不可见的; 、根据实际情况,设置共享权限,保证学生机可以访问以上各文件夹; (二)、在学生机上创建程序文件xxjslx.exe的快捷方式 (1)、先在某一机器上通过网上邻居访问服务器的 source 文件夹,右击 xxjslx.exe 文件,选择“发送到”-> “桌面快捷方式”。(要确保快捷方式里的“起始位置”是正确 (2)、在教师机上用电子教室软件将该快捷方式文件传送到所有学生机的桌面上。(三)操作举例 在此以EXCEL 的练习一为例 在服务器端,教师先将练习的源文件 EXCEL_LX1.XLS 放在 source 文件夹下的 EXCEL 文件夹下。(确保文件名和文件夹名与程序代码中的相应的名字一致) 在学生机上,学生只要双击桌面的快捷方式即可启动该程序,输入学号、确认姓名 后即可进入程序主界面,并自动在D 盘建立以学号为名的考生文件夹;然后在程序主界 面中选择 EXCEL->练习一,对应的作业文件 EXCEL_LX1.XLS 就自动从服务器复制到 盘的考生文件夹(即输入的学号)下并自动以学生姓名重命名。等完成练习后,只要单击“上交作业”按钮,即可将作业文件复制到服务器的zuoye 文件夹下对应班级和练 习的文件夹下,并且以学生姓名为主文件名。 教师可以通过查看作业文件夹来查看学生作业完成情况,也可以此作为学生平时成 绩的一个依据。 六、几点说明: 也许大家会认为,为了实现文件的收发,这样有点小题大做,但我要说的是,以此 为基础,如果你有兴趣和决心,你还可以增加以下一些功能: 1、作业的在线批改,在程序中添加一“批改”按钮并编写相应的代码,学生只要 单击该按钮即可将本次练习的操作情况批改出来。现在我已经实现了对EXCEL 文件、网 页文件、WINDOWS 操作及选择题的批改功能,现正研究对photoshop 和flash 文件的批 2、在服务器端,以students.mdb数据库为后台,通过asp 编程,将学生练习的批 改结果以WEB 的形式展现出来;学生只要单击一按钮就可在线查看自己的或其它同学的 历次成绩;有了上述网页,教师可实时查看、统计学生的本次和历次练习的完成情况; 这样就形成了一个集作业收发、批改、查看成绩于一体的功能全面的电子作业系统。 自从该系统在我校投入运行,学生上课更认真了,没完成作业前玩游戏的少了,暂差生 定位准了,会考成绩也大幅度提高了,每学期期末的总评成绩也更有依据了„„ 〖参考文献〗 《用VISUAL BASIC ASP ACCESS 2002 制作考试系统》 人民邮电出版社 堑澳急崔卿钙澄以上方法虽能实现作业上传功能, 但大家都很清楚, 其安全性不是很 学生通过简单的方法,就能实现抄袭作业; 并且一些学生经常忘记重 命名文件就上传, 使得一些早上传的文件.