怎么能在Win98下不让用户把自己编写的程序KILL掉?(100分)

  • 主题发起人 主题发起人 13958002501
  • 开始时间 开始时间
1

13958002501

Unregistered / Unconfirmed
GUEST, unregistred user!
编写一个程序,在WIN98下程序刚一Load还没有正式运行起来就被通过Ctrl+Alt+Del<br>出现的管理器给Kill了.当然,程序运行起来之后他就KILL不掉了.<br>请教各位大侠!
 
在主form 的 OnCreate 中进行服务注册:<br><br>function RegisterServiceProcess(dwProcessID:integer; dwType: Integer):Integer; stdcall;external 'KERNEL32.DLL';<br>procedure TForm1.FormCreate(Sender: TObject);<br>begin<br>&nbsp; RegisterServiceProcess(GetCurrentProcessId, 1);<br>end;<br>
 
在这里是不能完成的,一个应用程序是先初始化,并且Load到内存,<br>然后才能进行Form的Create,现在出现的问题是,你还没有到调用<br>OnCreate已经被学生给KILL掉了,你的所有控制也就没有办法完成了!
 
哈,这不是IrWom病毒机制?
 
我不太明白,手动用 Ctrl+Alt+Del kill 来得及吗?<br>那就放在 run注册表项中。<br>或寄生在 explorer 中。<br>
 
我把做好的程序让操作系统启动时自动运行,但是学生在他完全运行起来之前<br>把他给KILL掉了,以后我对系统的所有控制全用不上了。
 
你把它加在 RunService 难道也能被Kill.
 
在主form 的 OnCreate 中进行服务注册:<br><br>function RegisterServiceProcess(dwProcessID:integer; dwType: Integer):Integer; stdcall;external 'KERNEL32.DLL';<br>procedure TForm1.FormCreate(Sender: TObject);<br>begin<br>&nbsp; RegisterServiceProcess(GetCurrentProcessId, 1);<br>end;<br>不要放在这个地方。应该放在整个程序的入口处,我不知道Delphi写出来的程序的入口函数是什么,反正BCB里是WinMain
 
赞成NowCan的意见,在程序入口出注册就可以了。DELPHI的程序入口在他的主文件里面,<br>在关键字PROGRAM 下的BEGIN后写,就可以了。
 
Delphi园地有一个关于定时抓图的源码<br>有KILL线程的例子<br>http://mydelphi.8u8.com
 
我现在也在解决这个问题,头大!<br>在win98下,程序还没加载完就被kill掉了,请问win98下tserviceapplication程序怎么写?
 
接受答案了.
 
后退
顶部