设为首页 收藏本站
查看: 975|回复: 0

[经验分享] Windows Serivce服务实现过程和打包安装

[复制链接]

尚未签到

发表于 2017-6-29 07:39:20 | 显示全部楼层 |阅读模式
  环境:vs2013,win7
  参考:
Windows服务的快速搭建与调试(C#图解)
  .Net实现Windows服务安装完成后自动启动的两种方法
C# 生成windows 服务打包程序
  1、新建项目Windows Service项目。
DSC0000.png

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

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

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

  在ProjectInstaller类中,覆盖父类Commit方法
DSC0004.png

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




1   [RunInstaller(true)]
2     public partial class ProjectInstaller : System.Configuration.Install.Installer
3     {
4         public ProjectInstaller()
5         {
6             InitializeComponent();
7         }
8
9         public override void Commit(IDictionary savedState)
10         {
11             base.Commit(savedState);
12             ServiceController sc = new ServiceController("Service1");
13             if (sc.Status.Equals(ServiceControllerStatus.Stopped))
14             {
15                 sc.Start();
16             }
17         }
18     }
  3、打包为exe文件。
  vs2013默认没有打包项目,需要下载安装。
  Microsoft Visual Studio 2013 Installer Projects
  安装完后,解决方案右键添加新项目,Setup Project
DSC0006.png

DSC0007.png

  Add ,项目输出
DSC0008.png

  选择你的Windows service项目
DSC0009.png

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

  每个都添加 自定义操作
DSC00011.png DSC00012.png

  最终效果
DSC00013.png

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

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

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

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-389161-1-1.html 上篇帖子: windows中根据进程PID查找进程对象过程深入分析 下篇帖子: Windows 10 IoT Serials 7 – 如何用树莓派制作家庭流媒体播放器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表