C# .NET 0命令行安装Windows服务程序

统筹标准:万物皆对象

背景:在自家的花色中,即须要与硬件通过Socket连接通信,又供给给App提供Wcf服务操作接口,就算都做到了,可是却是三个控制台(即便本身很喜欢控制台,因为它大致易用),把它内置服务器运转,总有3个迷茫的窗口,总觉得不雅(原谅笔者的性变态)。于是各类百度谷歌(Google)何以创立运维WIndows服务程序,就如SqlServer数据那样在后台默默运营进献就足以了。

而是,很多都以那么的麻烦,需求批处理什么的,而自小编这厮从来喜欢简洁,于是便布置了这么个Windows服务帮助类,没有错,正是0命令。

正文:

1、类库源码笔者就不放了,最后都放到GitHub上

贰、使用方法:

using Coldairarrow.Util.WindowsService;
using System;

namespace WindowsServiceTest
{
    class Program
    {
        public static void Main(string[] argc)
        {
            //创建服务容器,第一个参数为指定服务名,第二个参数为主函数入口的参数argc
            WindowsServiceContainer serviceContainer = new WindowsServiceContainer("A_Test_Service", argc);

            //服务启动时执行的事件,即可以看做控制台的主函数Main即可
            serviceContainer.HandleOnStart = new Action<string[]>(args =>
            {
                //可以在这里添加你需要服务干的事情,比如创建Socket通讯,Wcf服务,balabala.........
                //让它在后台默默地工作把~~~~~~~~~~
            });

            //处理日志的事件
            serviceContainer.HandleLog = new Action<string>(log =>
            {
                Console.WriteLine(log);
            });

            //处理异常的事件
            serviceContainer.HandleException = new Action<Exception>(ex =>
            {
                Console.WriteLine(ex.Message);
            });

            //开始运行服务
            serviceContainer.Start();
        }
    }
}

一向运行控制台即可:

图片 1

分选一拓展安装服务:

图片 2

正确,你可以望见服务业已打响运转了!!!,是还是不是很假单?

 

慎选二实行劳动卸载:

图片 3

 

总结:

经过对劳务操作一文山会海的卷入,使将控制台程序变成服务程序非常粗略,不供给此外的批处理命令,只须求简单的几行代码即可,感觉很爽的请点赞!

老规矩,GitHub地址:

https://github.com/Coldairarrow/WindowsServiceDemo

相关文章