回到顶部

windowsSevice程序和topshelf程序创建服务对比

时间:5年前   作者:庞顺龙   浏览:2046   [站内原创,转载请注明出处]

标签: Topshelf  

区别主要在于以下几点:

1、编写方式
    一个是windowservice
    一个是console控制台程序

2、安装方式
    windowservice 需要自带的framework中的installutil
    topshelf打包的控制台程序自己随意安装

3、部署
    理论不通过其他手段一个windowservice部署文件夹包只能部署一个服务,想部署多套相同服务,需要拷贝多个相同文件夹进行多次安装
    topshelf则可以多个服务指向一个文件夹

4、调试
    windowservice调试,不解释多麻烦
    console控制台程序调试简单方便



安装:%systemroot%\microsoft.net\framework\v2.0.50727\installUtil.exe D:\Debug\WindowsService1.exe

卸载:sc delete服务名

net start 服务名

net stop 服务名

sc start 服务名

sc stop 服务名

部署windows服务--制作安装包

1、建立一个新的windows服务项目Server1    

2、打开Service1代码视图,找到OnStart部分,加入代码   

3、切换到设计视图,右键-添加安装程序    

4、切换到新生成的ProjectInstaller.cs设计视图,找到serviceProcessInstaller1Account属性设置为LocalSystem,对serviceInstaller1ServiceName属性设置为Server1(服务的名字),StartType属性设置为Automatic(系统启动的时候自动启动服务)     



1、 Topshelf下载地址https://github.com/Topshelf/Topshelf/downloads

2、 官网http://topshelf-project.com/

3、 文档http://docs.topshelf-project.com/en/latest/

4、 install:  ConsoleApplication1.exe install 

5、 start:   ConsoleApplication1.exe start ,执行后服务被启动

6、 stop:   ConsoleApplication1.exe stop ,执行后服务被停止

7、 uninstall:   ConsoleApplication1.exe uninstall,执行后服务被卸载

8、 很方便的安装卸载服务,同时我们本地调试也很简单,直接运行控制台即可

9、 下面我们再尝试一个方法,使用同一个ConsoleApplication1.exe创建若干个服务

10、 参数-instance执行安装  ConsoleApplication1.exe -instance " test1" install

11、同理再创建一个实例   ConsoleApplication1.exe -instance " test2" install

你会发现你的系统服务里增加了两个相同服务的不同实例 ,若要卸载直接将安装时的命令install 换位uninstall即可卸载

庞顺龙最后编辑于:3年前

内容均为作者独立观点,不代表八零IT人立场,如涉及侵权,请及时告知。

评论努力加载中...
暂无评论
暂无评论

手机扫码阅读

热门相关

加载中...
关于我们   联系我们   申请友链   赞助记录   站点地图
© 2014 - 2017 www.80iter.com All Rights Reserved. 京ICP备14042174号-1
本站遵循 CC BY 4.0 协议,转载请注明出处 。