2010-07-12 5 views
7

tengo una aplicación C# simple que necesita ejecutarse como servicio. ¿Cómo hago que se ejecute como un servicio en lugar de solo como un ejecutable?C# - ¿cómo hago que la aplicación se ejecute como un servicio?

+0

posible duplicación de [recursos en la creación de un servicio de Windows usando C#] (http://stackoverflow.com/questions/1688382/resources-on-creating-a-windows-service-using-c) – Joe

+0

Aquí he encontrado las instrucciones paso a paso: https://stackoverflow.com/a/593803/7713750 – Rekshino

Respuesta

2

Visual C# 2010 Recipies tiene un ejemplo que le mostrará exactamente cómo hacer esto, que he intentado usar VS 2008 y .NET 3.5.

equivale a esto:

  1. crear una nueva aplicación "servicio de Windows" en Visual Studio
  2. puerto de origen de la aplicación en el modelo de la ejecución del servicio, conocido como su función principal se convierte en parte de un controlador de eventos desencadenada por un objeto temporizador o algo por el estilo
  3. Añadir una clase de servicio de instalación para su proyecto de servicio de Windows - que se verá algo como esto siguiente fragmento de código:

    [RunInstaller(true)] 
    public partial class PollingServiceInstaller : Installer 
    { 
        public PollingServiceInstaller() 
        { 
         //Instantiate and configure a ServiceProcessInstaller 
         ServiceProcessInstaller PollingService = new ServiceProcessInstaller(); 
         PollingService.Account = ServiceAccount.LocalSystem; 
    
         //Instantiate and configure a ServiceInstaller 
         ServiceInstaller PollingInstaller = new ServiceInstaller(); 
         PollingInstaller.DisplayName = "SMMD Polling Service Beta"; 
         PollingInstaller.ServiceName = "SMMD Polling Service Beta"; 
         PollingInstaller.StartType = ServiceStartMode.Automatic; 
    
         //Add both the service process installer and the service installer to the 
         //Installers collection, which is inherited from the Installer base class. 
         Installers.Add(PollingInstaller); 
         Installers.Add(PollingService); 
        } 
    } 
    

Por último vamos a usar una utilidad de línea de comandos para instalar el servicio de realidad - se puede leer acerca de cómo funciona aquí:

http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/d8f300e3-6c09-424f-829e-c5fda34c1bc7

que me haga saber si tiene alguna pregunta.

3

Hay un tempate llamado "Servicio de Windows" en el estudio visual. Si tiene alguna pregunta, hágamelo saber, escribo servicios todo el día.

+0

muchas gracias jonathan definitivamente te haré cargo de eso –

2

Existe el Marco de código abierto que hospeda la aplicación .NET como servicio de Windows. No hay problemas para instalar, desinstalar el servicio de Windows. Se desacopla muy bien. Compruebe esta publicación Topshelf Windows Service Framework Post

Cuestiones relacionadas