http://blog.sina.com.cn/s/blog_5f4ffa170100vt2b.html

1、创建服务项目:

打开VS 2005 编程环境,在C#中新建Windows服务程序

2、将安装程序添加到服务程序:

在服务项目中双击新建的服务类,默认情况下是Service1.cs,出现Service1.cs设计界面,鼠标右键选择“添加安装程序”,系统自动生成项目安装类ProjectInstaller.cs,安装类中添加了两个安装组件:ServiceProcessInstall和ServiceInstall,并且服务的属性被复制到组件中。

3、设置服务属性:

① 设置登录用户:将ServiceProcessInstaller类的Account属性改为LocalSystem,这样服务可以在任意用户登录系统系统时,自启动服务。

② 设置服务启动方式:单击ServiceInstaller组件将StartType属性设置为Automatic(随系统启动)

③ 设置Windows服务名:设置ServiceInstaller组件中的ServiceName的属性为服务的名称,如上图所示的“Service1”

④ 设置服务描述、服务名称:在ServiceInstaller组件中设置Description和DisPlayName的值分别显示服务的描述和服务名称。

4、编程实现服务程序功能的启动、停止:打开Service1.cs类的代码,在服务启动、停止方法中分别添加服务程序的启动、停止需对应的功能代码。

protected
override void OnStart(string[] args)

{

// TODO:在此处添加代码以启动服务。

_ProcessParametersMaching.StartIni();

}

protectedoverride
void OnStop()

{

// TODO:在此处添加代码以执行停止服务所需的关闭操作。

_ProcessParametersMaching.ReleaseIni();

}

注意: 在服务项目中添加逻辑处理类、数据处理类,通过统一的方法去调用,如StartIni()和ReleaseIni()。

制作安装程序

1、创建安装项目:

在C#中新建项目,选择其他类型项目—安装和部署—安装项目,取名“HMCX_ProcessParametersMaching_Setup”

2、添加项目主输出:在安装项目中鼠标右键,选择“添加—项目输出—主输出”在项目下拉框中选择上边建立的“HMCX_ProcessParametersMaching_Service”服务。

3、获取依赖项:在检测到的依赖项,鼠标右键选择“刷新依赖项”,获取项目依赖项。

4、在解决方案资源管理器中右键点击安装程序,如本例的"HMCX_ProcessParametersMaching_Setup",选择“视图”下的“自定义操作”,系统弹出自定义操作界面,在“安装”和“卸载”下右键添加“主输出文件”,编译完成后即可实现Windows服务程序的安装。

至此,Windows服务和安装程序(C#版)建立完毕,可以把该服务部署到系统中了

制作Windows服务和安装程序(C#版)的更多相关文章

  1. 为C# Windows服务添加安装程序

    最近一直在搞Windows服务,也有了不少经验,感觉权限方面确定比一般程序要受限很多,但方便性也很多.像后台运行不阻塞系统,不用用户登录之类.哈哈,扯远了,今天讲一下那个怎么给Windows服务做个安 ...

  2. (转)为C# Windows服务添加安装程序

    本文转载自:http://kamiff.iteye.com/blog/507129 最近一直在搞Windows服务,也有了不少经验,感觉权限方面确定比一般程序要受限很多,但方便性也很多.像后台运行不阻 ...

  3. C# VS2010 windows服务的安装

    可能是太过于懒惰的原因,研究个windows 服务的安装程序都花了大半天时间.在网上看了一些示例,大部分都言过其实,把过程搞得太过复杂,老是需要去研究如何利用InstallUtil.exe及其参数.事 ...

  4. .net Windows服务程序和安装程序制作图解 及 VS 2010创建、安装、调试 windows服务(windows service)

    .net Windows服务程序和安装程序制作 最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作 ...

  5. .net Windows服务程序和安装程序制作图解

    最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作不成功,可能是开发环境或项目配置的不同,这里把自 ...

  6. C# 制作Windows服务安装包

    C# 制作Windows服务安装包   这两天公司要用C#写一个windows服务,做成安装安装包.制作的过程中遇到了一些问题,写完之后总结一下.如果以后在用到的话可以可以参考一下,而且由于原来没有做 ...

  7. Quartz任务调度 服务日志+log4net打印日志+制作windows服务

    引言 现在许多的项目都需要定时的服务进行支撑,而我们经常用到的定时服务就是Quartz任务调度了.不过我们在使用定时Job进行获取的时候,有时候我们就需要记录一下自定义的日志,甚至我们还会对执行定时J ...

  8. WCF 下的windows服务的安装卸载

    安装:启动vs2010(如果是win2008要以管理员来启动)命令:installutil demo.exe 卸载:先在服务里停止这个服务,然后启动vs2010(如果是win2008要以管理员来启动) ...

  9. windows服务与自启动程序的区别(转载)

    转载:http://blog.csdn.net/anddy926/article/details/8464142 在客户端服务器项目实践中,作为服务端必须保持程序的24小时不间断运行,需要做一个监控, ...

随机推荐

  1. C# 为什么你应该更喜欢 is 关键字而不是 == 运算符

    前言 在C# 进行开发中,检查参数值是否为null大家都用什么?本文介绍除了传统的方式==运算符,还有一种可以商用is关键字. C# 7.0 中 is 关键字的使用 传统的方式是使用==运算符: if ...

  2. TCP文件上传实现

    TCP文件上传实现 服务端: package net.study; import java.io.*; import java.net.ServerSocket; import java.net.So ...

  3. 树莓派SG90舵机接法

    我的舵机的三条线是红的.黑色.棕色,接法如下: 棕 : GND 红 : VCC 黄: 信号线 如图所示: 图片来源 如上图所示,写代码时注意舵机的BCM编码是18,而不是物理引脚的编码12.

  4. druid与知乎平台

    背景 知乎作为知名中文知识内容平台,业务增长和产品迭代速度很快,如何满足业务快速扩张中的灵活分析需求,是知乎数据平台组要面临的一大挑战. 知乎数据平台团队基于开源的 Druid 打造的业务自助式的数据 ...

  5. 常见的六种容错机制:Fail-Over、Fail-Fast、Fail-Back、Fail-Safe,Forking 和 Broadcast

    目录 1.Fail-Over:故障转移 2.Fail-Fast:快速失败 3.Fail-Back:失效自动恢复 4.Fail-Safe:失效安全 5.Forking:并行调用多个服务 6.Broadc ...

  6. noip40

    T1 记当前位置 \(i\) 上的颜色,上次出现的位置为 \(last_{1}\) ,上上次出现的位置为 \(last_{2}\) ,则,把当前点的颜色加进来,并且让其产生贡献的话,则会对 \([la ...

  7. 题解 P3941 入阵曲

    题解 观察数据范围,可以 \(\mathcal O(n^2m^2)\) 暴力计算,而加上特殊性质,则可以骗到 \(75pts\) 正解: 我们发现,在一维情况下,\(\mod k\) 相同的前缀和相减 ...

  8. Linux 分区扩容(根分区扩容,SWAP 分区扩容,挂载新分区为目录)

    请访问原文链接:https://sysin.org/blog/linux-partition-expansion/,查看最新版.原创作品,转载请保留出处. 作者:gc(at)sysin.org,主页: ...

  9. 剑指 Offer 13. 机器人的运动范围

    剑指 Offer 13. 机器人的运动范围 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] .一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左.右.上.下移动一 ...

  10. explorer.exe

    explorer.exe是Windows程序管理器或者文件资源管理器, 它用于管理Windows图形壳,包括桌面和文件管理,删除该程序会导致Windows图形界面无法使用. 终止: taskkill ...