Si es como la mayoría de los usuarios de Windows, tiene muchas pequeñas utilidades que se ejecutan al iniciar Windows. Si bien esto funciona muy bien para la mayoría de las aplicaciones, hay algunas que sería bueno comenzar incluso antes de que un usuario inicie sesión en la PC. Para hacer esto, deberá ejecutar la aplicación como un servicio de Windows.
Servicios de Windows son una clase especial de programas que están configurados para iniciarse y ejecutarse en segundo plano, generalmente sin ningún tipo de interfaz de usuario y sin necesidad de que un usuario inicie sesión en la PC. Sin embargo, muchos jugadores y usuarios avanzados los conocen como esas cosas que solía deshabilitar para ayudar a acelerar su sistema. eso realmente ya no es necesario .
La principal ventaja de ejecutar una aplicación como servicio es que puede hacer que un programa se inicie antes de que un usuario inicie sesión. Eso puede ser particularmente importante con aplicaciones que brindan servicios importantes que desea que estén disponibles cuando no esté en su computadora.
RELACIONADO: Comprensión y administración de los servicios de Windows
Un ejemplo perfecto de esto es Plex , una aplicación de servidor de medios que puede transmitir contenido local a casi cualquier dispositivo que posea. Claro, puede dejarlo en la bandeja del sistema como un programa normal, pero ¿qué pasa si la computadora se reinicia debido a un corte de energía o actualizaciones programadas? Hasta que vuelva a iniciar sesión en la PC, Plex no estará disponible. Eso es irritante si tienes que correr a otra habitación para que Plex vuelva a encender mientras tus palomitas de maíz se enfrían, y muy irritante si estás fuera de la ciudad y estás tratando de transmitir tus medios a través de Internet. Configurar Plex como servicio resolvería ese problema.
Antes de comenzar, debe tener en cuenta un par de advertencias importantes para ejecutar una aplicación como servicio:
- La aplicación no colocará un icono en la bandeja del sistema. Si necesita que la interfaz esté disponible con regularidad para una aplicación, es posible que no sea la más adecuada para ejecutarse como un servicio.
- Cuando necesite realizar cambios de configuración o actualizaciones, deberá detener el servicio, ejecutar el programa como una aplicación normal, hacer lo que debe hacer, detener el programa y luego iniciar el servicio nuevamente.
- Si el programa ya está configurado para ejecutarse cuando se inicia Windows, deberá deshabilitarlo para no terminar con dos instancias ejecutándose. La mayoría de los programas tienen una opción en la interfaz para alternar esta configuración. Otros pueden agregarse a su Carpeta de inicio , para que pueda eliminarlos allí.
¿Listo para rodar? Hablemos de cómo configurarlo.
Paso uno: Instale SrvStart
Para ejecutar una aplicación como servicio, necesitará una pequeña utilidad de terceros. Hay varios, pero nuestro favorito es SrvStart . Fue diseñado originalmente para Windows NT y funcionará con casi cualquier versión de Windows desde Windows XP en adelante.
Para empezar, dirígete al
Página de descarga de SrvStart
y agarra la utilidad. La descarga contiene solo cuatro archivos (dos DLL y dos EXE). No hay instalador; en su lugar, cópielos en la computadora
C: \ Windows
archívelos en su carpeta principal de Windows para "instalar" SrvStart.
También asumiremos que ya ha instalado y configurado el programa que va a convertir en un servicio, pero si no lo ha hecho, ahora sería un buen momento para hacerlo también.
Paso dos: crear un archivo de configuración para el nuevo servicio
A continuación, querrá crear un archivo de configuración que SrvStart leerá para crear el servicio. Hay muchas cosas que puede hacer con SrvStart, y puede leer los detalles completos sobre todas las opciones de configuración en el
página de documentación
. Para este ejemplo, solo usaremos dos comandos:
puesta en marcha
, que especifica el programa a iniciar, y
shutdown_method
, que le dice a SrvStart cómo cerrar el programa cuando se detiene el servicio respectivo.
Encienda el Bloc de notas y cree su archivo de configuración usando el siguiente formato. Aquí, usamos Plex, pero puede crear un archivo para cualquier programa que desee ejecutar como servicio. los
puesta en marcha
El comando simplemente especifica la ruta donde reside el archivo ejecutable. Para el
shutdown_method
comando, estamos usando el
winmessage
, que hace que SrvStart envíe un mensaje de cierre de Windows a cualquier ventana abierta por el servicio.
[Plex] startup = "C: \ Archivos de programa (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe" shutdown_method = winmessage
Obviamente, ajuste la ruta y el nombre de acuerdo con el programa que está iniciando.
Guarde el nuevo archivo de configuración donde desee y reemplace la extensión .txt por una extensión .ini. Anote el nombre del archivo, ya que lo necesitaremos en el siguiente paso. Para facilitar la escritura en el símbolo del sistema, le sugerimos que guarde este archivo temporalmente en su unidad C :.
Paso tres: use el símbolo del sistema para crear el nuevo servicio
El siguiente paso es utilizar el comando de Windows Service Controller (SC) para crear el nuevo servicio según los criterios de su archivo de configuración. Para abrir el símbolo del sistema, haga clic con el botón derecho en el menú Inicio (o presione Windows + X), seleccione "Símbolo del sistema (administrador)" y luego haga clic en Sí para permitir que se ejecute con privilegios administrativos.
En el símbolo del sistema, use la siguiente sintaxis para crear el nuevo servicio:
SC CREATE <servicename> Displayname = "<servicename>" binpath = "srvstart.exe <servicename> -c <ruta al archivo de configuración srvstart>" start = <starttype>
Hay un par de cosas a tener en cuenta en ese comando. Primero, cada signo igual (=) tiene un espacio después. Eso es obligatorio. También el
<nombredeservicio>
el valor depende totalmente de usted. Y, finalmente, para el
<tipo de inicio>
valor, querrás usar
auto
para que el servicio se inicie automáticamente con Windows.
Entonces, en nuestro ejemplo de Plex, el comando se vería así:
SC CREATE Plex Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto
Sí, leíste bien: usé
C: PlexService.ini
en lugar de
C: \ PlexService.ini
. El comando requiere que elimines la barra.
Cuando ejecute el comando, debería recibir un mensaje de ÉXITO si todo va bien.
A partir de este momento, su nuevo servicio se ejecutará siempre que se inicie Windows. Si abre la interfaz de Servicios de Windows (simplemente haga clic en Inicio y escriba "Servicios"), puede buscar y configurar el nuevo servicio como lo haría con cualquier otro.
Y eso es todo lo que hay que hacer. Si tiene aplicaciones que comienzan con Windows y prefiere que se inicien sin necesidad de que un usuario inicie sesión, es bastante fácil convertir cualquier aplicación en un servicio. Acabamos de mencionar el método básico para crear y ejecutar un nuevo servicio, pero hay mucho más que puede hacer con SrvStart para ajustar cómo se ejecuta un servicio. Asegúrese de consultar la documentación si desea obtener más información.