c# windows服务 一个进程 多个服务的使用
2015-12-01 12:58
381 查看
网上看了好多关于这个的教程,关于单进程,多服务的说法和做法 有些是无法成功的,研究了三个小时,终于知道如何做了,写于此处,方便以后查阅。
1.新建服务工程–不多说,此时已有一个Service1.cs
2.添加服务,此时多了一个Service2.cs
3.Service1的设计界面添加安装程序 此时多了ProjectInstaller.cs 以及上面的两个控件:serviceProcessInstaller1,serviceInstaller1 不做任何改动
4.Service2的设计界面添加安装程序 此时多了serviceInstaller2 控件 同样不做任何改动。
5.在Service1,Service2的onStart内写自己的代码
6.这个点比较重要 ProjectInstaller.Designer.cs内只有默认的
无serviceInstaller2 的信息 ,故添加:
然后就是安装了:
bat 文件:安装
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe WindowService.exe
pause
卸载:
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe /u WindowService.exe
pause
(版本信息之类的自己记得改 或者用其他方式 网上很多)
其实重点信息只有两个:
1:第六点 加一段代码
2:每个serviceProcessInstaller的serviceName是否对应
保留源代码,此处不知如何上传,有需要的可以联系:826575071
1.新建服务工程–不多说,此时已有一个Service1.cs
2.添加服务,此时多了一个Service2.cs
3.Service1的设计界面添加安装程序 此时多了ProjectInstaller.cs 以及上面的两个控件:serviceProcessInstaller1,serviceInstaller1 不做任何改动
4.Service2的设计界面添加安装程序 此时多了serviceInstaller2 控件 同样不做任何改动。
5.在Service1,Service2的onStart内写自己的代码
6.这个点比较重要 ProjectInstaller.Designer.cs内只有默认的
this.Installers.AddRange(new System.Configuration.Install.Installer[] { this.serviceProcessInstaller1, this.serviceInstaller1});
无serviceInstaller2 的信息 ,故添加:
this.Installers.AddRange(new System.Configuration.Install.Installer[] { this.serviceProcessInstaller1, this.serviceInstaller2});
然后就是安装了:
bat 文件:安装
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe WindowService.exe
pause
卸载:
%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe /u WindowService.exe
pause
(版本信息之类的自己记得改 或者用其他方式 网上很多)
其实重点信息只有两个:
1:第六点 加一段代码
2:每个serviceProcessInstaller的serviceName是否对应
保留源代码,此处不知如何上传,有需要的可以联系:826575071
相关文章推荐
- 字符串批量替换工具,R资源id动态获取
- 第7篇 WPF C# 怎样定义类及其接口
- C# 实现URLDownloadToFile回调
- 三种C#.net生成静态页面的方法
- c# windows服务 一个进程 多个服务的使用
- .NET(C#):await返回Task的async方法
- C#_Assembly-Reflection_程序集与反射 练习<一> 记事本插件编写
- [EmguCV][000] 基于C#搭建 Emgu CV 开发环境
- C#接口实例
- C#抽象类和抽象方法
- C#_Assembly-Reflection_程序集与反射
- C#程序调用cmd.exe执行命令
- C# 执行bat批处理文件
- C#综合揭秘——深入分析委托与事件
- C#中的Attribute
- 【C#】窗体透明度、ListBox的增删改查
- c#隐藏和重写基类方法的区别
- c# datagridview属性设置
- C#的自定义button
- c#事件(续委托之后)