Iniciar Servicio en W 2003 server

26/08/2008 - 18:51 por Fabian | Informe spam
Hola Gente:
Soy novato en esto de W2003 server
Tengo una aplicación que si la dejo en el startup arranca al encender el
equipo, pero si hago logoff se detiene.
La idea es dejarla una como servicio activo para que esté siempre
disponible...¿es correcto? ¿como lo hago?

Muchas Gracias

Fabian
 

Leer las respuestas

#1 Daniel Ríos
26/08/2008 - 19:00 | Informe spam
Existe una forma de convertir un EXE en un servicio, es un tema que hemos
visto recientemente en uno de los foros de Win 2003 Server, te comento cómo
hacerlo:

Para crear un servicio con un ejecutable lo puedes hacer con herramientas de
Microsoft o con herramientas de terceros.

Con herramientas de Microsoft
Se necesitan dos programas del Kit de recursos, instsrv.exe y srvany.exe; se
lanza desde un cmd la línea:

<path>instsrv.exe "Nombre del Servicio" <path>srvany.exe

Es imprescindible pasar el path donde esten ambos ejecutables.

Una vez hecho esto, se abre regedit y en
HKLM\system\CurrentControlSet\Services verás que se ha creado una
clave(useasé carpeta) "Nombre del Servicio"(si abres la consola de servicios
verás que ya se ve en la lista); pinchas en el árbol en ella y creas una
subclave(useasé carpeta) llamada "Parameters", dentro de ella un valor de
cadena llamado "Application" al que de contenido le pones Ruta\Nombre.exe.
Ya tienes creado el servicio. De esta manera se crea con arranque automático
y lanzado por cuenta del sistema; te metes en servicios y cambias lo que
haga falta(se puede hacer desde línea de comandos con "sc.exe").

Ten en cuenta que el programa debe recibir las rutas absolutas de donde deba
acceder, ya que al arrancarse como servicio digamos que "desconoce" en qué
ruta se encuentra su propio ejecutable, con lo que no sabe manejar rutas
relativas. Esto es así porque no se crea un servicio con el ejecutable en
realidad, si no que se crea con srvany como el ejecutable del servicio y el
ejecutable que queremos lanzar como parámetro (quizás si ubicamos una copia
de srvany en la misma carpeta en la que está el ejecutable funciona, pero
dependerá del ejecutable en sí)

Otra posibilidad, que a lo mejor te puede valer y es más simple, es lanzar
la aplicación en un script de inicio del equipo; se abre el editor de
políticas del sistema (gpedit.msc) y se especifica en "Configuración de
equipo\Configuración de Windows\Archivos de comandos (inicio/apagado)". De
esta forma se ejecutará, si bien no será un servicio.

Por último, puedes editar el registro para que se lance desde la clave
"HKLM\Software\Microsoft\Windows\CurrentVersion\Run", creando un valor de
tipo string (REG_SZ) al que llames como te parezca y que contenga la llamada
al ejecutable. De esta forma se ejecutará, si bien no será un servicio.

Con herramientas de terceros
Existen herramientas de terceros que te permiten lanzar aplicaciones como
servicios. Aquí pongo enlaces a cuatro de ellas:

Firedaemon
http://www.firedaemon.com/

Application as service 1.0
http://www.eltima.com/products/appl...s-service/

Service Mill
http://www.activeplus.com/us/products/smill/

Serve All
http://www.transsoft.com/view_content.asp?ID%


Daniel Ríos



"Fabian" escribió en el mensaje
news:
Hola Gente:
Soy novato en esto de W2003 server
Tengo una aplicación que si la dejo en el startup arranca al encender el
equipo, pero si hago logoff se detiene.
La idea es dejarla una como servicio activo para que esté siempre
disponible...¿es correcto? ¿como lo hago?

Muchas Gracias

Fabian


Preguntas similares