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

Windows services 如何为Windows编写空白服务二进制文件?,windows-services,Windows Services,我试图创建一个完全不做任何测试的服务。为此,我需要一个二进制文件,它完全不做任何事情,但服务似乎不会为任何可执行文件启动,只有那些专门设计为服务二进制文件的文件。我试图找到有关如何制作服务二进制文件的信息,但似乎什么也找不到。提前感谢。在这个小nuget库中查看演示服务: https://github.com/wolfen351/windows-service-gui 它应该为您创建一个测试服务提供一个良好的起点,它是一个不做任何事情的windows服务的简单实现。另外,nuget软件包将帮助

我试图创建一个完全不做任何测试的服务。为此,我需要一个二进制文件,它完全不做任何事情,但服务似乎不会为任何可执行文件启动,只有那些专门设计为服务二进制文件的文件。我试图找到有关如何制作服务二进制文件的信息,但似乎什么也找不到。提前感谢。

在这个小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);
        }


    }
}