使用Topshelf管理Windows服务
目的:以控制臺方式開發Windows服務程序,調試部署方便。
?
https://www.cnblogs.com/itjeff/p/8316244.html
https://www.cnblogs.com/gossip/p/4506142.html
?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Topshelf;
namespace Topshelf測試
{
??? //用控制臺方式開發Windows服務,使用開源組件Topshelf做托管
??? //主要目的:調試方便
??? //https://www.cnblogs.com/itjeff/p/8316244.html
??? //
??? //安裝:TopshelfDemo.exe install
??? //啟動:TopshelfDemo.exe start
??? //卸載:TopshelfDemo.exe uninstall
??? class Program
??? {
??????? static void Main(string[] args)
??????? {
??????????? HostFactory.Run(c =>
??????????? {
??????????????? c.SetServiceName("LogServices");
??????????????? c.SetDisplayName("LogServices");
??????????????? c.SetDescription("LogServices");
??????????????? c.RunAsLocalSystem();
??????????????? c.Service<TopshelfService>(s =>
??????????????? {
??????????????????? s.ConstructUsing(b => new TopshelfService());
??????????????????? s.WhenStarted(o => o.Start());
??????????????????? s.WhenStopped(o => o.Stop());
??????????????????? s.WhenPaused(o => o.Pause());
??????????????????? s.WhenContinued(o => o.Continue());
??????????????????? s.WhenShutdown(o => o.Shutdown());
??????????????? });
??????????? });
??????? }
??? }
??? public class TopshelfService
??? {
??????? public void Start()
??????? {
??????????? //服務邏輯
??????? }
??????? public void Stop()
??????? {
??????? }
??????? public void Pause()
??????? {
??????? }
??????? public void Continue()
??????? {
??????? }
??????? public void Shutdown()
??????? {
??????? }
??? }
}
轉載于:https://www.cnblogs.com/81/p/10106560.html
總結
以上是生活随笔為你收集整理的使用Topshelf管理Windows服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【自我解析】2020华为杯数学建模比赛A
- 下一篇: RAPID 信号的互锁和同步 Wait