编写并运行windows服务
一、什么是windows服务
Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合。它没有用户界面,并且也不会产生任何可视输出。任何用户消息都会被写进Windows事件日志。计算机启动时,服务会自动开始运行。它们不要用户一定登录才运行,它们能在包括这个系统内的任何用户环境下运行。通过服务控制管理器,Windows服务是可控的,可以终止、暂停及当需要时启动。
本文演示创建一个windows服务的基本步骤,和使用InstallUtil.exe来发布服务,使之运行在机器上。主要功能就是在服务启动和结束的时候记下日志,同时每隔一定时间记录下程序运行日志。
二、创建windows服务的步骤
1.新建项目——windows服务
2.给Service1.cs编写代码
todo... code is here。。。
注意:此处的Timer是Syste.Timers.Timer,而不是System.Windows.Forms.Timer,具体区别请看另一篇文章。
三、安装windows服务前的配置
windows服务不同于通常的windows应用程序,光通过一个简单的exe程序执行是不够的,还需要.Net Framework提供的InstallUtil.exe工具来完成,把程序添加到windows服务中去,这样便于InstallUtil.exe或者其它别的安装程序知道你的服务是怎样配置的。
3.添加windows服务安装程序
1. 将这个服务程序切换到设计视图
2. 右击设计视图选择"添加安装程序"
3. 切换到刚被添加的ProjectInstaller的设计视图
4. 设置serviceInstaller1组件的属性:
1) ServiceName = 我的第一个windows服务
2) StartType = Automatic
5. 设置serviceProcessInstaller1组件的属性
1) Account = LocalSystem
6. 生成解决方案
到此为止,这个服务已经生成,接下来需要用InstallUtil.exe来安装windows服务。
四、使用InstallUtil.exe安装windows服务
1.Win+R打开cmd命令提示行
2.切换目录到项目所在文件夹的bin\debug目录,
3.执行命令 InstallUtil.exe MyWindowsService.exe 来注册这个服务
注意:直接运行InstallUtil.exe可能会失败,提示'InstallUtil.exe' 不是内部或外部命令,也不是可运行的程序或批处理文件。
因为系统找不识别这个命令,不过可以在C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727 目录下找到该工具。
4.右击"我的电脑"——服务列表中就有新建的windows服务了。
作者:樊勇
出处:http://www.cnblogs.com/fanyong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
我的联系方式:fanyong@gmail.com
个人独立博客:www.fy98.com