如何为Windows编写空白服务二进制文件?

时间:2018-11-02 20:47:36

标签: windows-services

我正在尝试创建一项对测试完全不起作用的服务。为此,我需要一个绝对不执行任何操作的二进制文件,但服务似乎并不会为任何可执行文件启动,而只是专门为服务二进制文件而设计的文件。我试图找到有关如何制作服务二进制文件的信息,但似乎什么也找不到。预先感谢。

1 个答案:

答案 0 :(得分:1)

在这个小nuget库中查看演示服务:

https://github.com/wolfen351/windows-service-gui

它应该为您提供一个使用测试服务的良好起点,它是Windows服务的简单实现,它什么也不做。 nuget软件包也将帮助您运行它! :)

这是代码的核心:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.Threading;

namespace DemoService
{
    public partial class Service1 : ServiceBase
    {
        public Service1()
        {
            InitializeComponent();
            Timer t1 = new Timer(AutoStopCallback, null, 15000, -1); // auto stop in 15 seconds for testing
        }

        private void AutoStopCallback(object state)
        {
            Stop();
        }

        protected override void OnStart(string[] args)
        {
            Thread.Sleep(2000);
            base.OnStart(args);
        }

        protected override void OnStop()
        {
            Thread.Sleep(2000);
            base.OnStop();
        }

        protected override void OnContinue()
        {
            Thread.Sleep(2000);
        }

        protected override void OnPause()
        {
            Thread.Sleep(2000);
        }


    }
}