2014-12-11 2 views
0

У меня есть приложение Windows, и я хочу запустить его с помощью службы WINDOWS. Я создал приложение WINDOWS SERVICE, теперь как бы интегрировать свой WIN APP в это приложение для Windows?Преобразование приложения Windows в службу Windows

+1

Поместив логику 'Main()' внутри 'OnStart()' и убедившись, что вы туда вернетесь. Если вы хотите получить более конкретную помощь, я бы предложил опубликовать соответствующий код и задать конкретный вопрос. – CodeCaster

+0

У вас есть код для приложения Windows или он сторонний? –

+0

@RonDeijkers На самом деле его вид приложения среднего размера, код большой. –

ответ

1

Это довольно общее требование, и я предлагаю вам рассмотреть следующие вопросы: Мой код будет использовать следующий пакет: TopShelf

После:

nuget Install-Package Topshelf 

В вашем старте есть что-то вроде следующее:

public static int Main() 
    { 
     var exitCode = HostFactory.Run 
     (
      c => 
      { 
       c.Service<Service> 
       (
        sc => 
        { 
         sc.ConstructUsing(name => new Service()); 

         sc.WhenStarted((service, hostControl) => service.Start(hostControl)); 

         sc.WhenStopped((service, hostControl) => Service.Stop(hostControl)); 
        } 
       ); 

       c.SetServiceName("ServiceName"); 

       c.SetDisplayName("DisplayName"); 

       c.SetDescription("Description"); 

       c.EnablePauseAndContinue(); 

       c.EnableShutdown(); 

       c.StartAutomaticallyDelayed(); 

       c.RunAsLocalSystem(); 
      } 
     ); 

     return (int)exitCode; 
    } 

И следовать конфигурации, доступные в TopShelf configuration

Мы используем TopShelf во многих наших проектах и ​​полностью удовлетворяет наши потребности.

Смежные вопросы