日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

Topshelf创建Windows服务

發(fā)布時(shí)間:2023/12/10 windows 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Topshelf创建Windows服务 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

入門例子

using log4net; using System; using System.Timers; using Topshelf;namespace ConsoleAppTest {class Program{static void Main(string[] args){log4net.Config.XmlConfigurator.Configure();HostFactory.Run(x =>{x.Service<TownCrier>();x.RunAsLocalSystem(); // 服務(wù)使用NETWORK_SERVICE內(nèi)置帳戶運(yùn)行。身份標(biāo)識(shí),有好幾種方式,如://x.RunAs("username", "password"); x.RunAsPrompt(); x.RunAsNetworkService(); x.SetServiceName("ConsoleAppTest服務(wù)名稱");x.SetDisplayName("ConsoleAppTest顯示名稱");x.SetDescription("ConsoleAppTest服務(wù)描述");});}}public class TownCrier : ServiceControl{readonly Timer _timer;readonly ILog _log = log4net.LogManager.GetLogger("wolflogInfo");public TownCrier(){//10秒運(yùn)行一次_timer = new Timer(10000) { AutoReset = true };_timer.Elapsed += (sender, eventArgs) => _log.Info(DateTime.Now);}bool ServiceControl.Start(HostControl hostControl){_log.Info("ConsoleAppTest is Started");_timer.Start();return true;}bool ServiceControl.Stop(HostControl hostControl){_log.Info("ConsoleAppTest is Stop");_timer.Start();return true;}}}

?

Log4的config配置

<?xml version="1.0" encoding="utf-8" ?> <configuration><configSections><section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/></configSections><startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /></startup><log4net><logger name="wolflogInfo"><level value="Info" /><appender-ref ref="wolflogInfoFileAppender" /></logger><logger name="wolflogError"><level value="Error" /><appender-ref ref="wolflogErrorFileAppender" /></logger><logger name="wolflogALL"><level value="ALL" /><appender-ref ref="wolflogALLFileAppender" /></logger><!-- 綁定使用的名稱 -->  <appender name="wolflogInfoFileAppender" type="log4net.Appender.RollingFileAppender,log4net"><lockingModel type="log4net.Appender.FileAppender+MinimalLock" /><!--輸出文件夾路徑--><param name="File" type="" value="App_Data/Log/Info/" /><param name="AppendToFile" value="true" /><param name="RollingStyle" value="Date" /><!--文件名稱命名規(guī)則--><param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" /><param name="StaticLogFileName" value="false" /><param name="MaxSizeRollBackups" value="62" /><layout type="log4net.Layout.PatternLayout,log4net"><!--輸出頭--><param name="ConversionPattern" value="%n[%d] %c %n%m%n%n" /></layout></appender><appender name="wolflogErrorFileAppender" type="log4net.Appender.RollingFileAppender,log4net"><lockingModel type="log4net.Appender.FileAppender+MinimalLock" /><param name="File" type="" value="App_Data/Log/Error/" /><param name="AppendToFile" value="true" /><param name="RollingStyle" value="Date" /><param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" /><param name="StaticLogFileName" value="false" /><param name="MaxSizeRollBackups" value="62" /><layout type="log4net.Layout.PatternLayout,log4net"><param name="ConversionPattern" value="%n[%d] %c %n%m%n%n" /></layout></appender><appender name="wolflogALLFileAppender" type="log4net.Appender.RollingFileAppender,log4net"><lockingModel type="log4net.Appender.FileAppender+MinimalLock" /><param name="File" type="" value="App_Data/Log/ALL/" /><param name="AppendToFile" value="true" /><param name="RollingStyle" value="Date" /><param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" /><param name="StaticLogFileName" value="false" /><param name="MaxSizeRollBackups" value="62" /><layout type="log4net.Layout.PatternLayout,log4net"><param name="ConversionPattern" value="%n[%d] %c %n%m%n%n" /></layout></appender></log4net> </configuration>

?

安裝運(yùn)行命令

安裝:ConsoleAppTest install
卸載:ConsoleAppTest uninstall
啟動(dòng):ConsoleAppTest start
停止:ConsoleAppTest stop

需要用管理員運(yùn)行程序

多實(shí)例安裝

ConsoleAppTest –instance "ConsoleAppTest2" install
ConsoleAppTest –instance "ConsoleAppTest2" uninstall
也可以?sc delete? 刪除

?

轉(zhuǎn)載于:https://www.cnblogs.com/lgxlsm/p/8405163.html

總結(jié)

以上是生活随笔為你收集整理的Topshelf创建Windows服务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。