该方法用于配置新的服务主机,方法接受一个参数Action<HostConfigurator>配置方法调用,该方法返回Host对象,表示Topshelf服务主机,准备运行。 configureCallback.Method.DeclaringType;用于获取声明该成员的类。declaringType.Namespace;用于获取获取 System.Type 的命名空间。ValidateConfigurationResult.CompileResults(configurator.Validate());用于验证配置结果。
2.HostFactory.Run():
public static TopshelfExitCode Run(Action<HostConfigurator> configureCallback) { try { return New(configureCallback) .Run(); } catch (Exception ex) { HostLogger.Get(typeof(HostFactory)) .Error("The service terminated abnormally", ex); HostLogger.Shutdown(); return TopshelfExitCode.AbnormalExit; } }
该方法是一个静态方法,配置和运行新的服务主机,处理任何异常并将其写入日志。该方法接收一个参数Action<HostConfigurator> configureCallback配置方法调用,返回应用程序主方法返回的进程的退出代码。
四.总结
以上是介绍如何使用Topshelf组件创建简单的Windows服务的方法,在这里只是一个简单的介绍,没有很深入的介绍,如果需要了解更多的东西,可以看源码,毕竟是开源免费的组件,也是一个很不错的组件。