Ejecutar Un Script Como Servicio En Windows
Ejecutar un script como servicio en windows
O
Crear servicio en windows basado en script:
Se trata de crear un servicio quese encargue de lanzar un script que vigila o controla si existe un proceso y si no existe el proceso lo lanza.
Escenario:
* Windows XP SP3
Requisitos:
* instsrv.exe: Windows Server 2003Resource Kit Tools
* srvany.exe: Windows Server 2003 Resource Kit Tools
* script cmd: Batch Scripting: script para impedir que se cierre una aplicación o proceso
Implementación del servicio:* Copio las utilidades instsrv.exe y srvany.exe, en la carpeta de trabajo ( e:\Servicios )
* Inicio > ejecutar > cmd > e: > cd Servicios
E:\Servicios>instsrv.exe “Nocerrar”e:\Servicios\srvany.exe
He creado el Servicio llamado Nocerrar, se crea por defecto como tipo de Inicio Automático y como inicio de sesión como Sistema Local
Ahora lo parametrizamos oconfiguramos o personalizamos:
* Ejecutamos el regedit y navegamos hasta la rama:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Nocerrar
* Añadimos nueva clave a Nocerrar, y la llamamosParameters
* Añadimos un valor alfanumérico a Parameters, llamado Application
* Damos a Application como valor, el Path o ruta al script que deseamos que corra como un servicio
en mi casoel path o ruta al script es: e:\Servicios\nocerrar.cmd
* Iniciamos el servicio desde consola cmd
e:\Servicios\ net start nocerrar
El script nocerrar.cmd, se encarga de monitorizar si elproceso notepad.exe esta corriendo y si no se esta ejecutando lo lanza.
123456789 | @echo off:inicioset proceso=notepad.exeset ERRORLEVEL=tasklist | findstr %proceso%if ERRORLEVEL==1 start%proceso%rem delay de 5 sg@ping -n 5 127.0.0.1 > nullgoto inicio |
[/code]
@echo off
:inicio
set proceso=notepad.exe
set ERRORLEVEL=...
Regístrate para leer el documento completo.