使用Topshelf管理Windows服务

一、官方网站及源码下载

1、官方网站:http://topshelf-project.com/

2、源码下载:https://github.com/Topshelf/Topshelf/downloads

二、Topshelf优势

1、调试方便:不用创建windows服务项目,直接创建控制台程序即可,启动控制台就可以进行服务代码调试

2、安装/卸载服务方法
           1、cmd-->cd 程序目录(直接定位到exe文件所在目录)

2、安装服务:JwifiRoute.Message.LogServices.exe install
           3、启动服务:JwifiRoute.Message.LogServices.exe start

4、卸载服务(需要执行多次才能卸载服务):JwifiRoute.Message.LogServices.exe uninstall

三、使用Topshelf创建服务

       1、引入Topshelf.dll

2、启动服务

        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        static void Main()
        {
            HostFactory.Run(c =>
            {
                c.SetServiceName("LogServices");
                c.SetDisplayName("LogServices");
                c.SetDescription("LogServices");

                c.Service<TopshelfService>(s =>
                {
                    s.ConstructUsing(b => new TopshelfService());
                    s.WhenStarted(o => o.Start());
                    s.WhenStopped(o => o.Stop());
                });
            });

3、服务程序逻辑

public class TopshelfService
      {
        public void Start()
        {
            //服务逻辑
        }

 public void Stop()
        {
        }
}
时间: 2024-10-20 01:31:55

使用Topshelf管理Windows服务的相关文章

如何使用Topshelf管理Windows服务

一.官方网站及源码下载 1.官方网站:http://topshelf-project.com/ 2.源码下载:https://github.com/Topshelf/Topshelf/downloads 二.使用Topshelf创建服务 1 static void Main(string[] args) 2 { 3 HostFactory.Run(x => 4 { 5 x.Service<MyService>(dtService => 6 { 7 ServiceConfigurat

利用Python脚本管理Windows服务

Windows服务常用的功能就是启动服务,关闭服务,重启服务和查询服务运行状态,其中查询服务运行状态是其他三种操作的基础. 本文中提到的使用Python脚本管理Windows服务实际上是调用win32serviceutil模块,此模块来自pywin32包,此模块本身有管理服务的功能,有兴趣的可以去阅读它的部分源码. 本脚本存在的目的是为了熟练Python的语法和基本操作,Windows下有更好的命令行工具来管理服务,如sc.Powershell等.通常命令行工具的执行速度要比services.m

Topshelf创建Windows服务

使用Topshelf创建Windows服务 概述 Topshelf是创建Windows服务的另一种方法,老外的一篇文章Create a .NET Windows Service in 5 steps with Topshelf通过5个步骤详细的介绍使用使用Topshelf创建Windows 服务.Topshelf是一个开源的跨平台的宿主服务框架,支持Windows和Mono,只需要几行代码就可以构建一个很方便使用的服务宿主. 引用安装 1.官网:http://topshelf-project.c

Quartz+TopShelf实现Windows服务作业调度

Quartz:首先我贴出来了两段代码(下方),可以看出,首先根据配置文件(quartz.config),包装出一个Quartz.Core.QuartzScheduler instance,这是一个调度器,调度各个任务项(Jobs)的执行.这个调度器可以被Start.被Shutdown.被PauseAll.被ResumeAll,这对应 了windows服务的开启.停止.暂停.恢复.当启动服务,我就调用调度器的Start(),停止服务我就调用调度器的Shutdown()方法. namespace Q

使用Topshelf创建Windows 服务

本文转载:http://www.cnblogs.com/aierong/archive/2012/05/28/2521409.html b.利用组件Topshelf 本方式特点:代码简单,开源组件,Windows服务可运行多个实例 Topshelf是一个开源的跨平台的服务框架,支持Windows和Mono,只需要几行代码就可以构建一个很方便使用的服务. 官方网站:http://topshelf-project.com 第1步:引用程序集TopShelf.dll和log4net.dll 第2步:创

[转]玩转Windows服务系列——命令行管理Windows服务

本文转自:http://www.cnblogs.com/hbccdf/p/managewindowsservicewithcmd.html 说到Windows服务的管理就不得不说通过命令行的方式管理Windows服务,因为无论是系统管理员,还是通过编程的方式调用cmd命令,命令行都是非常方便以及强大的工具. 接下来就看一下如何通过cmd命令管理Windows服务. 管理Windows服务的主要cmd命令 管理Windows服务的命令应该有很多,但是我所了解到的命令主要有两个:sc.net. 说是

如何使用PowerShell管理Windows服务

[TechTarget中国原创] 作为一名系统管理员,最常见的任务之一就是学会管理Windows服务,这是保证Windows服务器和客户端正常运行的重要内容. 许多操作系统和应用程序都依赖于这些服务. Microsoft Management Console窗口是我们非常熟悉的一款Windows服务,通过该服务,管理员可以在本地或者远程计算机上操控服务.但是,一时间还不能改变几十台甚至几百台机器. 此时,PowerShell就派上用场了. PowerShell应用几个本地Cmdlet来管理Win

Java用wmi4j远程管理Windows服务

原文请访问:http://www.chenlichao.cn/opensource/74.html wmi4j是纯Java实现的Windows WMI客户端,它基于j-interop针对WMI重新封装,提供了更便捷的方法,能满足基本的windows管理,包括服务管理,性能查询,执行脚本等等. wmi4j下载 用Maven的朋友们可以直接引入,groupId=cn.chenlichao, artifactId=wmi4j, version=0.9. 源码地址: Github: https://gi

【转】使用Topshelf创建Windows服务

转自:http://www.cnblogs.com/jys509/p/4614975.html 概述 Topshelf是创建Windows服务的另一种方法,老外的一篇文章Create a .NET Windows Service in 5 steps with Topshelf通过5个步骤详细的介绍使用使用Topshelf创建Windows 服务.Topshelf是一个开源的跨平台的宿主服务框架,支持Windows和Mono,只需要几行代码就可以构建一个很方便使用的服务宿主. 引用安装 1.官网