古城堡 发表于 2017-6-29 07:39:20

Windows Serivce服务实现过程和打包安装

  环境:vs2013,win7
  参考:
Windows服务的快速搭建与调试(C#图解)
  .Net实现Windows服务安装完成后自动启动的两种方法
C# 生成windows 服务打包程序
  1、新建项目Windows Service项目。

  2、服务安装后自动启动。
  右键添加安装程序

  要设置服务的一些属性。设置运行服务的账号类型为本地账户。

  设置服务名称,设置启动方式为自动启动。
  注意:Display Name:是设置看到的服务名称。在计算机》管理》服务,看到的是这个。
  Service Name :是设置实际的服务名称。在Window 任务管理器里面看到的是这个。
  在任务管理器进程里看到的是Windows Service项目的名称。

  在ProjectInstaller类中,覆盖父类Commit方法

  代码如下:注意名称,此名称要与Windows Service设置的名称一样,在serviceInstaller1右键属性里面设置




1   
2   public partial class ProjectInstaller : System.Configuration.Install.Installer
3   {
4         public ProjectInstaller()
5         {
6             InitializeComponent();
7         }
8
9         public override void Commit(IDictionary savedState)
10         {
11             base.Commit(savedState);
12             ServiceController sc = new ServiceController("Service1");
13             if (sc.Status.Equals(ServiceControllerStatus.Stopped))
14             {
15               sc.Start();
16             }
17         }
18   }
  3、打包为exe文件。
  vs2013默认没有打包项目,需要下载安装。
  Microsoft Visual Studio 2013 Installer Projects
  安装完后,解决方案右键添加新项目,Setup Project


  Add ,项目输出

  选择你的Windows service项目

  在打包项目右键,view,自定义操作

  每个都添加 自定义操作

  最终效果

  最后,就可以生成安装包了,在bin目录下Debug中

  安装完成后就可看到服务了

  修改默认安装路径:
  以上的默认安装路径为:C:\Program Files (x86)\Microsoft。如果要修改默认安装路径,在这里修改
页: [1]
查看完整版本: Windows Serivce服务实现过程和打包安装