Skip to content

Windows Service

Las aplicaciones desarrolladas con Platform proveen soporte nativo para poder hostear las mismas como servicios de Windows.

Instalacion

Una vez desarrollada las aplicación, podes instalar la misma como servicio ejecutando el siguiente comando:

dotnet.exe Aplicacion.dll install

Desinstalacion

También podemos desinstalar la misma ejecutando lo siguiente:

dotnet.exe Aplicacion.dll uninstall

Instalación de API's

Al momento de la instalacion de una api, es muy comun querer establecer la url en donde el servicio escuchara las peticiones, para esto contamos con el siguiente parametro --urls.

dotnet.exe Aplicacion.dll install --urls http://some-ip-address:some-port-number
dotnet.exe Aplicacion.dll install --urls http://10.20.2.100:8080
dotnet.exe Aplicacion.dll install --urls http://appdcsrv3:8080
dotnet.exe Aplicacion.dll install --urls http://10.20.2.100:8080,http://appdcsrv3:8080

Nombre del Servicio

Previo a la instalación existen 3 propiedades que deberemos modificar para que los datos que figuren en el servicio sean acordes a la aplicación que desarrollamos.

  public class Program : IServiceStatus
  {
    public string ServiceName { get; set; } = "PlatformConsoleService";

    public string ServiceDisplayName { get; set; } = "Platform Console Service";

    public string ServiceDescription { get; set; } = "Platform Console Service";
Estas 3 propiedades figuran en la clase Program.cs y contienen valores por defecto, los cuales deberemos modificar acorde a nuestra aplicación. Estos valores se utilizaran al momento de la instalación de los servicios y van a figurar en la pantalla de Servicios de Windows.

Establecer Nombre del Servicio al momento de la instalación

Existen 3 parámetros que nos sirven para modificar el nombre del servicio, el nombre de visualización y la descripción del mismo al momento de instalación.

Nombre Descripción
--servicename El nombre que el servicio debe usar al instalar
--displayname El nombre para mostrar que debe usar el servicio al instalar.
Ej: --displayname MyService
--description La descripción del servicio que el servicio debe utilizar al instalar.
Ej: --descripción "Mi servicio"

IMPORTANTE

Si utilizamos el parámetro --servicename al momento de instalación, también deberemos usarlo al momento de la desinstalación, pasando el mismo nombre de servicio.

Establecer tipo de inicio al momento de instalación

Existen algunos parametros que nos permiten establecer el tipo de inicio de nuestro servicio. Los tipos de inicio para un servicio de windows suelen ser 3: manual, automatico y automatico con inicio retrazado. Por defecto si no pasamos ningun parametro el servicio se instalar con inicio automatico.

Nombre Descripción
--manual El servicio debe iniciarse manualmente.
--delayed El servicio debería iniciarse automáticamente (retrasado)

Iniciar el servicio inmediatamente despues de la instalacion

Por defecto el servicio no se iniciara despues de la instalacion. Si necesitamos que inicie luego de la instalacion sin nuestra intervencion, podemos agregar el siguiente parametro --start en la instalacion.

dotnet.exe Aplicacion.dll install --start