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

时间:2023-03-08 18:50:18

环境:vs2013,win7

参考:

Windows服务的快速搭建与调试(C#图解)

.Net实现Windows服务安装完成后自动启动的两种方法

C# 生成windows 服务打包程序

1、新建项目Windows Service项目。

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

2、服务安装后自动启动。

右键添加安装程序

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

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

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

设置服务名称,设置启动方式为自动启动。

注意:Display Name:是设置看到的服务名称。在计算机》管理》服务,看到的是这个。

Service Name :是设置实际的服务名称。在Window 任务管理器里面看到的是这个。

在任务管理器进程里看到的是Windows Service项目的名称。

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

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

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

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

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

   [RunInstaller(true)]
public partial class ProjectInstaller : System.Configuration.Install.Installer
{
public ProjectInstaller()
{
InitializeComponent();
} public override void Commit(IDictionary savedState)
{
base.Commit(savedState);
ServiceController sc = new ServiceController("Service1");
if (sc.Status.Equals(ServiceControllerStatus.Stopped))
{
sc.Start();
}
}
}

3、打包为exe文件。

vs2013默认没有打包项目,需要下载安装。

Microsoft Visual Studio 2013 Installer Projects

安装完后,解决方案右键添加新项目,Setup Project

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

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

Add ,项目输出

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

选择你的Windows service项目

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

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

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

每个都添加 自定义操作

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

最终效果

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

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

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

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

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

修改默认安装路径:

以上的默认安装路径为:C:\Program Files (x86)\Microsoft。如果要修改默认安装路径,在这里修改

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