Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- internal sealed class Program
- {
- #if DEBUG
- private static void Main()
- #else
- private static void NotUsedMain()
- #endif
- {
- XmlConfigurator.Configure();
- AppDomain.CurrentDomain.UnhandledException += DomainExceptionsHandler.OnDomainUnhandledException;
- Logger log = LogManager.GetCurrentClassLogger();
- using (var serviceBuilder = new ServicesBuilder())
- {
- log.Debug("Starting...");
- serviceBuilder.BuildApplication();
- serviceBuilder.OpenCommunicationServices();
- log.Info("MyConnectorService is running. Press <Esc> or <Enter> to stop.");
- while (ProcessSpecialKey(Console.ReadKey()))
- {
- }
- }
- }
- private static bool ProcessSpecialKey(ConsoleKeyInfo keyInfo)
- {
- switch (keyInfo.Key)
- {
- case ConsoleKey.Enter:
- case ConsoleKey.Escape:
- return false;
- }
- return true;
- }
- }
- }
- partial class WindowsService1 : ServiceBase
- {
- private readonly Logger _log;
- private readonly ServicesBuilder _serviceBuilder;
- public WindowsService1()
- {
- InitializeComponent();
- _log = LogManager.GetCurrentClassLogger();
- _serviceBuilder = new ServicesBuilder();
- _serviceBuilder.BuildApplication();
- }
- protected override void OnStart(string[] args)
- {
- try
- {
- _log.Info("Starting MyWindows Service...");
- _serviceBuilder.OpenCommunicationServices();
- _log.Info("MyWindows Service is running");
- ...
- }
- protected override void OnStop()
- {
- try
- {
- _serviceBuilder.CloseCommunicationServices();
- ...
- }
- #if !DEBUG
- private static void Main()
- #else
- private static void NotUsedMain()
- #endif
- {
- var servicesToRun = new ServiceBase[]
- {
- new WindowsService1(),
- };
- Run(servicesToRun);
- }
- }
- }
- public class ServicesBuilder : IDisposable
- {
- public void BuildApplication()
- {
- }
- public void CloseCommunicationServices()
- {
- }
- public void OpenCommunicationServices()
- {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement