使用Topshelf创建 Windows 服务
Topshelf 安装
使用 Nuget 安装 Topshelf
Install-Package Topshelf
Topshelf 应用
HostFactory.Run(x =>
{
x.UseLog4Net("log4net.config", true);//使用log4net、加载配置
x.Service<AMQPService>(s =>
{
s.ConstructUsing(name => new AMQPService());
s.WhenStarted(service => service.Start());
s.WhenStopped(service => service.Stop());
});
x.RunAsLocalService();
x.SetDescription("Topshelf测试服务");
x.SetDisplayName("Topshelf测试");
x.SetServiceName("TopshelfDemo");
});
安装服务
以管理员身份运行 cmd ,转到 exe 文件(例如:TopshelfDemo.exe)TopshelfDemo.exe install //安装服务
TopshelfDemo.exe start //启动服务
TopshelfDemo.exe uninstall //卸载服务
使用log4net
使用 Nuget 安装 Topshelf.Log4NetInstall-Package Topshelf.Log4Net
启动服务时加载配置x.UseLog4Net("log4net.config", true);
获取logger
private static readonly Topshelf.Logging.LogWriter _logger =
Topshelf.Logging.HostLogger.Get<T>();
_logger.Info("这是要保存的日志内容");