Windos服务部署
Windows服务在VistualStudio2005中创建还是很方便的,我自己也第一次玩,简单的记录下,学习
首先是在VS中新建Windows Service Project
删除掉新的工程中默认存在的Service1.cs文件,重新新建自己的文件。
2、在新建的cs设计页面上,添加自己需要的组件,这里因为我的服务是定时执行 生成静态页面的程序的,因此只添加了一个定时器
VS把设计页面与代码编写页面分开了,右击设计页面选择查看code,会打开需要我们编写代码的页面,页面上默认存在三个方法:构造,OnStart,OnStop,这两个partial文件其实都属于一个类,partial class EAPStaticPage : ServiceBase,继承自ServiceBase,Windows服务的基类。
如果我们的程序可以暂停的话,我们可以为服务添加OnContinue和OnPause方法。这里我没有添加。需要提一下的是,System.Windows.Form.Timer 该timer控件是无法在服务中运行的,而应该使用 System.Timers.Timer。除了这两种 Timer以外,还有一种是线程中的,这里没有研究。
代码如下:
这样服务的内容就创建完成了,还需要添加一个安装文件,用来将服务与系统进行挂接。
3、创建InstallProject文件,在Design页面上右击,选择Add Installer,系统会为我们自动添加该文件,并且将需要注册的组件都包含在文件内。
4、接下来就是注册服务了,使用Installutil命令来注册,首先是使用cmd到达 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727路径下,然后运行命令:
installutil d:\project\bin\debug\xxxx.exe
就可以了,如果我们的服务引用了其他的工程,则一定要确保引用的dll文件或者配置文件在同一个目录下。
运行该命令可能会需要输入帐户名和密码,请注意帐户名需要输入 机器名\用户名
卸载该服务使用命令:
installutil /u d:\project\bin\debug\xxxx.exe