C# Windows服务自动安装与注册
【转】http://www.cnblogs.com/jiewei915/archive/2010/11/11/1874827.html
首先,当然是创建一个Windows服务的项目。这个大家应该都知道怎么做(这都不明白的留言问我),然后要给服务“添加安装程序”,如图1所示:(这一步和自己用InstallUtil注册是完全一样的)
(图1)
添加后,会出来一个serviceProcessInstal1,还有serviceInstaller1,如果你一个项目里有两个服务的话,这里就会有两个serviceInstaller类,如图2:
(图2)
图3是serviceProcessInstal1的属性页,其中Account就是指用于运行服务的帐户,如果只是用于本地,可以选LocalSystem(本地系统),这是本地的最高权限,并可以选择和桌面交互功能。如果安全性考虑的话,请选择适合自己的。
(图3)
图4是serviceInstaller2的属性页,其中DisplayName就是显示在Windows服务管理器中的服务名称,Desciption是服务的说明。下面ServiceName是服务内部名称。最关键的是下面的StartType,是指服务的启动方式,是自动,手动和禁用三种。
(图4)
下面,就是今天讲的重点了,点击“文件”->“添加”->“新建项目”(如图5)
(图5)
选择“其他项目类型”->“安装和部署”里的“安装项目”(如图6)
(图6)
建好项目后,右键刚才新建的安装项目,选择“视图”->“文件系统”(如图7)
(图7)
这时,打开了文件系统属性。可以看到,屏幕左边,出现了三项文件系统的内容,因为我们是Windows服务程序,不需要在开始菜单和桌面上放置图标,所以我们直接右键“应用程序文件夹”->“添加”->“项目输出”(如图8)
(图8)
在出来的对话框中,选择“主输出”和“Release XXX”,这个由你的项目属性决定,一般选择Release Any CPU。(如图9)
(图9)
系统会自动把项目输出文件,也就是Windows服务程序的EXE文件和所有引用的类库文件都列在中间的框中。这时,为了方便安装,我们把InstallUtil.exe和两个我自己写的批处理文件一起添加进去。添加方法类似上面,只是把“项目输出”改成“文件”。
结果如图10所示:
(图10)
接下来,就该配置一下安装过程,让安装程序自动给我们安装和卸载Windows服务。
还是右键安装项目,选“视图”->“自定义操作”,如图11:
(图11)
左边的窗口换到了自定义操作的视图了,右键“安装”->“添加自定义操作”(图12),出现的对话框中,选中“应用程序文件夹”,再选中其中的InstallUtil.exe文件(图13),添加好后,会在安装操作下面多出一个InstallUtil.exe的分支。点一下它,在右边的属性页里,设置Arguments=“ 你的Windows服务文件名”,如图14(注意文件名前要留一个空格)
(图12)
(图13)
(图14)
同样,在提交和卸载处,也添加InstallUtil.exe,不过属性页中设置Arguments=“ -u 你的Windows服务文件名”,这样,安装程序就能实现自动安装注册和卸载Windows服务了。(如图15)
(图15)
接下来就该让Windows服务和安装项目同时被编译了。右键点击解决方案,选择“属性”(如图16),在出来的对话框中,勾上安装项目后面的生成。(如图17)
(图16)
(图17)
最后,右键解决方案,选择“生成解决方案”,这时vs会将两个项目都会编译出来。不过要注意一点:项目的启动顺序一定要Windows服务项目在前,安装项目在后。
转载于:https://www.cnblogs.com/liuhaitao/archive/2011/02/22/1961567.html
C# Windows服务自动安装与注册相关推荐
- [图]为C# Windows服务添加安装程序
最近一直在搞Windows服务,也有了不少经验,感觉权限方面确定比一般程序要受限很多,但方便性也很多.像后台运行不阻塞系统,不用用户登录之类.哈哈,扯远了,今天讲一下那个怎么给Windows服务做个安 ...
- 为C# Windows服务添加安装程序
首先,当然是创建一个Windows服务的项目.这个大家应该都知道怎么做(这都不明白的留言问我),然后要给服务"添加安装程序",如图1所示:(这一步和自己用InstallUtil注册 ...
- 禁止Windows更新自动安装驱动程序
禁止Windows更新自动安装驱动程序 问题 解决方案 方案1:修改系统设置 方案2:修改组策略 方案3:修改注册表 方案4:回退驱动 问题 Windows更新时,会自动更新驱动程序,甚至有时会将驱动 ...
- 十步完成windows服务的安装
十步完成windows服务的安装 可能是太过于懒惰的原因,研究个windows 服务的安装程序都花了大半天时间.在网上看了一些示例,大部分都言过其实,把过程搞得太过复杂,老是需要去研究如何利用In ...
- Windows服务(Service)安装及启动停止方案
目录 一.创作背景 二.问题解决 2.1 安装Windows service服务 2.2 主方法Main()主方法改写 2.3 安装service服务/卸载service服务 2.4 服务启停 2.5 ...
- windows服务,安装、启动、停止,配置,一个批处理文件搞定
相对而言,还是比较通用的吧,如果哪位仁兄有更好的实现方式,或者发现有不足之处,还请多多指教. @echo off echo.------------------------------------- ...
- 如何为windows服务添加安装程序(转)
1.将写好的windows服务切换到设计视图,右键-添加安装程序 2.切换到新生成的ProjectInstaller.cs设计视图,找到serviceProcessInstaller1对Accoun ...
- MongoDB作为windows服务来安装-2
首先区官网下载对应版本的安装文件,我本地的环境是win7 bit64 我下载的版本是: mongodb-win32-x86_64-2.4.6 ok, 文件下载后,开始安装,这里要说一下,如果直接启动 ...
- windows电脑自动安装第三方软件-联想客服建议解决办法
问题: 电脑无缘无故自动安装第三方软件,常规杀毒也不管用:右下角偶尔跳出网页游戏小图标,很恶心. 联想官方客服建议办法: 解释: 系统不会自动安装第三方程序,这个是您安装的软件捆绑安装或者点击某 ...
最新文章
- SNF快速开发平台MVC-EasyQuery-拖拽生成SQL脚本
- 查看OpenStack版本
- 人口普查(20) PAT
- for-each的使用
- python内置字符串处理函数_Python内置的字符串处理函数
- Android中Log日志的管理之log工具类
- Github带来的不止是开源,还有折叠的认知
- java if在内存中_java如何将对象暂存到内存中?
- 【转载】从Docker容器漏洞谈Docker安全
- 以xml html编写的的学生管理系统,基于.NET和XML的学生中心数据库管理系统的研究与实现...
- ElasticSearch遇到问题
- Kibana 6.2.3修改本地时区
- 使用天地图api访问本地wms
- Web前端程序员简历模板
- Android桌面隐藏图标
- 基于布谷鸟搜索算法的函数寻优算法
- 小程序组件实现周日历功能,课程表、食谱等功能可能会用到的日历简单实现
- 地址规范化--城市三级联动(layui) (A)
- 【文案是做什么?】来源某乎“吾老湿”的精彩回答,我收藏一下,以后学习。
- 微信发红包如何设计测试用例
热门文章
- 量化客户需求强度-建立VOC
- html页面的ajax请求,【提问】ajax请求返回整个html页面
- python requests text content_python 3 关于requests库的 text / content /json
- 运筹优化(十五)--应用模型之分配问题
- 运动目标跟踪(四)--搜索算法优化搜索方向之Camshift
- 跨栏表格位置跑到了下一页_LaTeX双栏模板插入通栏公式(跨栏插图)
- 【汇编语言】通用数据处理指令——算术运算类指令
- Python 列表实现原理
- Spark sql数据倾斜优化的一个演示案例
- SpringMVC的Model、Model Map、ModelAndView