服务端关机时的处理
一般这类程序在运行时,当进行关机操作,其它程序都被关掉了,只有它们不为所动。所以必须对关机消息进行处理。
procedure exitwin(var msg:TWMQUERYENDSESSION);message WM_QUERYENDSESSION; procedure TServer.exitwin(var msg: TWMQUERYENDSESSION); begin inherited; server.Close; end;
程序退出时写注册表,防止用regedit或msconfig把服务端程序从注册表中去。这样regedit或msconfig所作的工作白费,除非立即关电源 procedure TServer.FormDestroy(Sender: TObject); var reg:Tregistry; s:string; begin s:=application.ExeName; reg:=Tregistry.Create; Reg.RootKey:=HKEY_LOCAL_MACHINE; Reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices',True); Reg.WriteString(...); reg.free; end;
-------------------------------------------- 湖北襄樊 官本和([email protected]) 2001.4 详见主页源程序: http://delphi21cn.yeah.net http://personal.hb.cninfo.net/~gbh

|