Windows Serivce服务实现过程和打包安装
环境:vs2013,win7
参考:
1、新建项目Windows Service项目。

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

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

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

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

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

[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


Add ,项目输出

选择你的Windows service项目

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

每个都添加 自定义操作


最终效果

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

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

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

Windows Serivce服务实现过程和打包安装的更多相关文章
- Windows Installer服务总是自动关闭导致无法安装在win10上安装英伟达显卡驱动的解决方案
你可以依次点击"开始→程序→附件→命令提示符",键入:msiexec /unregister, 然后再键入msiexec /regserver.应该就能解决. 更多的参考:How ...
- 不能访问windows installer 服务,可能你在安全模式下运行 windows ,或者windows installer
windows installer服务解决方案 很多朋友在安装MSI格式的文件包时,经常会遇到windows installer出错的情况,有如下几种现象: 1.所有使用windows install ...
- office2010安装出错,windows installer服务不能更新一个或多个受保护的windows文件
转自:http://www.08lr.cn/article/1985.html office2010安装过程中出现如下图错误:windows installer 服务不能更新一个或多个受保护的wind ...
- InstallUtil.exe版本引起安装windows services 服务遇到的问题,System.BadImageFormatException
原文:把程序安装成windows服务的过程及遇到的问题 做好了定时任务的程序,要把它放在服务器上,作为windows服务运行,也就是说,退出登录,用户注销后程序任然在后台运行. 将exe程序发布为服务 ...
- 将Apache手动安装成Windows的服务
将Apache手动安装成Windows的服务 可以选择在安装Apache时自动将其安装为一个服务.如果选择"for all users",那么Apache将会被安装为服务. 如果选 ...
- C#创建服务及使用程序自动安装服务,.NET创建一个即是可执行程序又是Windows服务的exe
不得不说,.NET中安装服务很麻烦,即要创建Service,又要创建ServiceInstall,最后还要弄一堆命令来安装和卸载. 今天给大家提供一种方式,直接使用我们的程序来安装/卸载服务,并且可以 ...
- [转]C#创建服务及使用程序自动安装服务,.NET创建一个即是可执行程序又是Windows服务的exe
写在前面 原文地址:C#创建服务及使用程序自动安装服务,.NET创建一个即是可执行程序又是Windows服务的exe 这篇文章躺在我的收藏夹中有很长一段时间了,今天闲着没事,就自己动手实践了一下.感觉 ...
- 安装TortoiseGit出现提示“您必须安装带有更新版本Windows Installer服务的Windows Service Pack”-解决方法
我的系统是xp sp3安装TortoiseGit时出现了错误提示“您必须安装带有更新版本Windows Installer服务的Windows Service Pack”. 解决方法,到微软官方下载相 ...
- 安装Office时出现windows installer服务不能更新一个或多个受保护的windows文件错误的解决方法
今天在Windows XP上安装Microsoft Office 2010时,总是遇到“Windows Installer服务不能更新一个或多个受保护的windows文件,安装失败,正在回滚更改”提示 ...
随机推荐
- 【工业串口和网络软件通讯平台(SuperIO)教程】八.SuperIO通讯机制与设备驱动对接的说明
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 通讯机制说明 通讯的总体机制采用呼叫应答方式,就是上位机软件主动发送请求数据命令,下位机终端接 ...
- C/C++内存分配
一. 预备知识—程序的内存分配: 一个由C/C++编译的程序占用的内存分为以下几个部分:1.栈区(stack)—由编译器自动分配释放,存放函数的参数值,局部变量的值等.其操作方式类似于数据结 ...
- WCF自寄宿
WCF很早就出现了,然而我感受到能够让新手重点去学习WCF而不是WebService是最近两年.我相信大部分人初步了解WCF的时候会很痛苦,尤其是生成代理类,以及配置的问题.我本人其实比较讨厌配置编程 ...
- Java Class.cast方法
1.Java api public T cast(Object obj); Casts an object to the class or interface represented 解释的比较笼统, ...
- HBase数据库集群配置
0,HBase简介 HBase是Apache Hadoop中的一个子项目,是一个HBase是一个开源的.分布式的.多版本的.面向列的.非关系(NoSQL)的.可伸缩性分布式数据存储模型,Hbase依托 ...
- Play modules
A Play application can be assembled from several application modules. This allows you to reuse appli ...
- 删掉SQL Server登录时登录名下拉列表框中的选项
问题: 我以前创建了一个登录名如kpi,之后在"安全性-登录名" 里删掉了,但是每次登录时,登录名的下拉框中总是能显示登录名kpi,怎么把它删掉呢? 解决方案: 1).SQL Se ...
- SqlServer灾备方案(本地)
如果你曾经有那么一个不经意的心跳来自于数据库数据损坏:错误的新增.更新.删除 .那么下面的方案一定能抚平你的创伤! 对于一个数据库小白来说,数据库的任何闪失带来的打击可说都是致命的.最初,我们让一个叫 ...
- AD RMS 配置指南 附结合SharePoint使用
本文的 RMS配置 是独立安装的配置手册,如果要和SharePoint结合使用可以作为参考指南. SharePoint安装可参考 点击链接 同样可提供给Office使用,当然Exchange也可以使用 ...
- 自动显示隐藏布局的listView
借助View的OnTouchListener接口来监听listView的滑动,通过比较与上次坐标的大小,判断滑动方向,并通过滑动方向来判断是否需显示或者隐藏对应的布局,并且带有动画效果. 1.自动显示 ...