现在的学生越来越聪明,一年前就发现他们不知从哪里学来退出教学系统的方法了, 一节课下来,最终发现大半部分人都没听课,上自己的网,听自己的音乐。从一个学生口中得知他们的方法,原来是如此简单(具体方法不说了,免得有人有样学 样)。
不过办法总是有的,计算机关闭前会先关闭用户进程,再关闭系统进程。呵呵,哪就写服务进程来监控教学系统的学生端吧,如果发现不存在就自动运行它。 下面就是创建这个服务进程的过程,用DELPHI写的。
1、打开DELPHI--新建--Service Application
2、设置SERVICE属性:
DisplayName:服务的名称,你可以起个很像WINDOWS自身的服务名称,让你找不得。
AllowStop:允许停止吗?FALSE吧,不让停止
ServiceType:用stWin32
其他不设置了。
3、在SERVICE窗口中放个定时器,我设了5秒执行一次,代码就是查找教学系统学生端进程是否存在,如果不存在则启动他。
procedure TService1.Timer1Timer(Sender: TObject);
var
hSnapshot: THandle;//用于获得进程列表
lppe: TProcessEntry32;//用于查找进程
Found: Boolean;//用于判断进程遍历是否完成
f:boolean;
begin
hSnapshot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);//获得系统进程列表
lppe.dwSize := SizeOf(TProcessEntry32);//在调用Process32First API之前,需要初始化lppe记录的大小
Found := Process32First(hSnaps

本文介绍了如何使用DELPHI编写一个服务进程,以监控教学系统的客户端进程。通过创建服务应用,设置不允许停止的服务属性,并利用定时器每5秒检查学生端进程是否运行,若未运行则自动启动。最后,建议将服务进程文件命名为svchost.exe并注册为服务,以确保其监控功能的安全性和有效性。

7887

被折叠的 条评论
为什么被折叠?



