[Windows服务概述]
服务与应用的区别
    需要附加到进程方可调试
    需要创建安装
    错误信息使用事件日志纪录
    使用自己的用户权限
    ..................

服务的生命周期
    安装
    开始、运行、暂停、停止

服务类型
    单个类型(Win32OwnProcess)
    共享类型(Win32ShareProcess)

[创建Windows服务]
新建"Windows Service"工程

设置"ServiceName"属性
    该属性必须和安装类中的相匹配

设置以下属性
    CanStop
        该服务是否可以停止
    CanShutDown
        该服务是否接受关机消息,并是否触发OnShutDown事件
    CanPauseAndContinue
        该服务是否可以停止和运行
    CanHandlePowerEvent
        该服务是否可以控制电源事件
    AutoLog
        该服务是否自动纪录信息到应用程序事件日志中

自定义代码
    重载OnStart、OnStop及其他方法

为服务添加安装程序且编译该工程

安装创建及编译好的Windows服务

[为Windows服务添加安装程序]
添加安装程序
    Windows服务上右键,选择添加安装程序

设置ServiceInstaller属性
    ServiceName属性与Windows服务中设定的名称相符
    设置启动类型:Manual, Automatic, Disabled

设置ServiceProcessInstaller属性
    为服务设置安全上下文

重载其相关方法

如需添加其他服务,重复以上步骤
    实际多添加的是"ServiceInstaller"
    所有的服务共享一个"ServiceProcessInstaller"

[部署和卸载Windows服务]
命令行方式
    部署:InstallUtil myProject.exe
    卸载:InstallUtil /u myProject.exe
   
    InstallUtil工具目录:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

安装方式
    解决方案上点击右键、新工程
    Setup and Deployment Projects
    Setup Project
    在新生成的工程上点击右键、项目输出、Primary Output、确定

MSDN
Windows Service Applications