从Window系统托盘控制Windows服务

<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
Window系统托盘控制Windows服务 作者: 孟宪会 出自: 【孟宪会之精彩世界】 发布日期: 2003-8-5 17:38:11
Window 系统托盘控制 Windows 服务

VB.NET有许多内建的类,可以让我们轻松创建Windows服务程序,但如何轻松控制这些服务呢?一般是到管理工具里面进行控制。本文将描述如何创建一个运行在系统托盘里的程序来轻松控制一个服务程序。至于如何创建服务程序,可以参考.NET SDK或其它创建服务程序的文章,本文的例子利用IIS的W3SVC服务来做例子,来控制IIS的停止与启动。

要开发这样的程序,我们先打开Microsoft Visual Studio.NET,新建一个名为ServiceController的解决方案,然后新建名为WinForm的Visual Basic类型的Windows应用程序,然后把VS.NET自动创建的Form1.vb删除掉,因为我们创建的应用程序没有用户界面,我们在Sub Main运行程序。

先添加引用-.NET-System.ServiceProcess.dll,新建名为modMain的模块,代码如下:

  Imports System.TextImports System.DiagnosticsImports System.ServiceProcessPublic Module modMain Private WithEvents mobNotifyIcon As NotifyIcon Private WithEvents mobContextMenu As ContextMenu Private WithEvents mobTimer As Timers.Timer Private mobServiceController As ServiceControllerEnd Module 

上面的代码首先引用了三个名称空间,然后分别定义了四个变量:mobNotifyIcon将会在系统托盘里显示;ContextMenu显示菜单信息;mobTimer为定时器,原来检查服务的状态,以随时变更菜单和图标的状态;mobServiceController表示Windows服务应用程序并允许连接到正在运行或者已停止的服务、对其进行操作或获取有关它的信息。

由于服务程序是没有用户界面的,因此我们设置三种图标标识服务的状态,这里做了三个简单的图标来标识服务的状态:Running.ico,Paused.ico,Stopped.ico,分别如下:

下面我们就建立定时器SetUpTimer过程,通常,IIS停止或启动的间隔为5秒,我们就用5秒来做定时器的间隔,代码如下:

  Private Sub SetUpTimer() &amp;amp;lt;script type="text/javascript"&amp;amp;gt;&amp;lt;!-- google_ad_client = "pub-2947489232296736"; /* 728x15, 创建于 08-4-23MSDN */ google_ad_slot = "3624277373"; google_ad_width = 728; google_ad_height = 15; //--&amp;gt; &amp;amp;lt;/script&amp;amp;gt; &amp;amp;lt;script type=&amp;amp;quot;text/javascript&amp;amp;quot; src=&amp;amp;quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&amp;amp;quot;&amp;amp;gt; &amp;amp;lt;/script&amp;amp;gt;&amp;lt;div style="FLOAT: right"&amp;gt;&amp;amp;lt;script type="text/javascript"&amp;amp;gt;&amp;lt;!-- google_ad_client = "pub-2947489232296736"; /* 160x600, 创建于 08-4-23MSDN */ google_ad_slot = "4367022601"; google_ad_width = 160; google_ad_height = 600; //--&amp;gt; &amp;amp;lt;/script&amp;amp;gt;&amp;amp;lt;script type=&amp;amp;quot;text/javascript&amp;amp;quot; src=&amp;amp;quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&amp;amp;quot;&amp;amp;gt; &amp;amp;lt;/script&amp;amp;gt;&amp;lt;/div&amp;gt; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值