制作Windows服务和安装程序(C#版)
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#版)的更多相关文章
- 为C# Windows服务添加安装程序
最近一直在搞Windows服务,也有了不少经验,感觉权限方面确定比一般程序要受限很多,但方便性也很多.像后台运行不阻塞系统,不用用户登录之类.哈哈,扯远了,今天讲一下那个怎么给Windows服务做个安 ...
- (转)为C# Windows服务添加安装程序
本文转载自:http://kamiff.iteye.com/blog/507129 最近一直在搞Windows服务,也有了不少经验,感觉权限方面确定比一般程序要受限很多,但方便性也很多.像后台运行不阻 ...
- C# VS2010 windows服务的安装
可能是太过于懒惰的原因,研究个windows 服务的安装程序都花了大半天时间.在网上看了一些示例,大部分都言过其实,把过程搞得太过复杂,老是需要去研究如何利用InstallUtil.exe及其参数.事 ...
- .net Windows服务程序和安装程序制作图解 及 VS 2010创建、安装、调试 windows服务(windows service)
.net Windows服务程序和安装程序制作 最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作 ...
- .net Windows服务程序和安装程序制作图解
最近项目中用到window服务程序,以前没接触过,比较陌生,花了两天的时间学习了下,写了个简单的服务,但在制作安装程序的时候,参照网上很多资料,却都制作不成功,可能是开发环境或项目配置的不同,这里把自 ...
- C# 制作Windows服务安装包
C# 制作Windows服务安装包 这两天公司要用C#写一个windows服务,做成安装安装包.制作的过程中遇到了一些问题,写完之后总结一下.如果以后在用到的话可以可以参考一下,而且由于原来没有做 ...
- Quartz任务调度 服务日志+log4net打印日志+制作windows服务
引言 现在许多的项目都需要定时的服务进行支撑,而我们经常用到的定时服务就是Quartz任务调度了.不过我们在使用定时Job进行获取的时候,有时候我们就需要记录一下自定义的日志,甚至我们还会对执行定时J ...
- WCF 下的windows服务的安装卸载
安装:启动vs2010(如果是win2008要以管理员来启动)命令:installutil demo.exe 卸载:先在服务里停止这个服务,然后启动vs2010(如果是win2008要以管理员来启动) ...
- windows服务与自启动程序的区别(转载)
转载:http://blog.csdn.net/anddy926/article/details/8464142 在客户端服务器项目实践中,作为服务端必须保持程序的24小时不间断运行,需要做一个监控, ...
随机推荐
- C++ //关系运算符重载 < = > !=
1 //关系运算符重载 < = > != 2 #include <iostream> 3 #include <string> 4 using namespace s ...
- 『Java』数组
在学习数组之前先学习java.util.Arrays类中的一个静态方法Arrays.toString(). 该方法可以将传入的数组格式化为一个字符串,便于我们查看数组内容,例如: import jav ...
- 实战爬取拷背漫画-Python
一.抓包获取链接 以爬取<前科者>为例 获取搜索链接 https://api.copymanga.com/api/v3/search/comic?limit=5&q=前科者 ...
- VIM正则表达式的懒惰模式
例如有如下一段话: Another whale sighting occurred on , <2004>. AK and HI 要匹配每一个<...>,如果用<.> ...
- 零基础学Java之Java学习笔记(四):运算符
算术运算符: 算术运算符是对数值类型的变量进行运算的,在 Java 程序中使用的非常多. 运算符 说明 例子 结果 + 加法-相加运算符两侧的值 9+9 18 - 减法-左操作数减去右操作数 10 ...
- S3C2440—3.用点亮LED来熟悉裸机开发的详细流程
文章目录 一.硬件知识 1.LED原理图 2.芯片手册 Ⅰ.找LED原理图 Ⅱ.找对应引脚 Ⅲ.在芯片手册中查找引脚信息 Ⅳ.查看寄存器说明 Ⅴ.配置寄存器 二.S3C2440框架与启动过程 三.要用 ...
- Android 11(R) Power HAL AIDL简析 -- 基本接口
Android 11(R) Power HAL AIDL将分三篇文章来介绍: Android 11(R) Power HAL AIDL简析 -- 基本接口 Android 11(R) Power HA ...
- 盘点 HashMap 的实现原理及面试题
1.请你谈谈 HashMap 的工作原理如果被问到 HashMap 相关的问题,它的工作原理都会被作为面试的开场白,这个时候先装作若有所思的样子冷静一下.首先 HashMap 是基于 hashing ...
- nodejs根据word模板生成文档(方法二)
[推荐该方法,模板比较简洁] 1,代码, 这里采用的模块为 docxtemplater 和 open-docxtemplater-image-module,均为开源(docxtemplater 有收费 ...
- 【转】java内存溢出的场景及解决办法
参考: https://blog.csdn.net/qq_32671287/article/details/86063396 https://www.cnblogs.com/snowwhite/p/9 ...