如何利用VB编写NT服务程序__教程 |
|
日期:2007-5-20 0:36:47 人气:137 [大 中 小] |
|
|
|
以上属性的设定视您的需要而定,我只是说在我的VBBeepSVC中如此设定足够了。 3、编写代码,实现服务逻辑以及服务安装、撤除。 因为服务程序实际上是一个Exe文件,并且需要自己解决安装、撤除问题,因此需要在此程序中加入利用NT服务控件来实现安装、撤除问题。那么,应当在什么时候进行了。VB程序启动时正时Form装载的时候,所以,我们需要在窗体的Load事件中加入一些代码: On Error GoTo Err_Load ‘如果出现错误就纪录以供参考 Dim strDisplayName As String strDisplayName = NTService1.DisplayName If Command = "-install" Then ‘当启动时带上 –install的参数时 NTService1.Interactive = True If NTService1.Install Then Call NTService1.SaveSetting("Parameters", "TimerInterval", "1000") ‘系统参数存储 MsgBox strDisplayName & " 安装成功!" Else MsgBox strDisplayName & " 安装失败" End If End ‘终止安装 Else If Command = "-uninstall" Then ‘如果启动时带上 撤除参数 If NTService1.Uninstall Then MsgBox strDisplayName & " 撤除成功" Else MsgBox strDisplayName & " 撤除失败" End If End ‘终止撤除 Else End If End If ‘假若不是安装或撤除操作,即为启动服务 Timer1.Interval = CInt(NTService1.GetSetting("Parameters", "TimerInterval", "2000")) ‘使用Timer控件来模拟服务的线程特性 NTService1.ControlsAccepted = svcCtrlPauseContinue ‘接受暂停、停止操作,意味着需要为此编码 NTService1.StartService ‘设置好参数后启动服务 Err_Load: Call NTService1.LogEvent(svcMessageError, svcEventError, "[" & Err.Number & "] " & Err.Description) ‘svcMessageError为NT服务控件的错误值 |
|
出处:本站原创 作者:佚名 |
|
|