Guía completa para crear y ejecutar un mini servicio de Windows desde System32

Última actualización: 14/07/2025
Autor: Isaac
  • Permite ejecutar programas como servicios en segundo plano y de arranque.
  • Existen métodos clásicos (instsrv y srvany) y modernos (sc.exe) para configurarlos.
  • Requiere precaución al manipular el registro y rutas del sistema para evitar errores.

Servicio Windows desde System32

¿Te has preguntado alguna vez cómo ejecutar un programa como servicio en Windows a través de System32? Este procedimiento puede parecer reservado a usuarios avanzados, pero en realidad, con las indicaciones correctas y atención a los detalles, se puede realizar en distintas versiones de Windows sin complicaciones. Los servicios de Windows son aplicaciones que se ejecutan en segundo plano y que, a menudo, requieren privilegios especiales o deben estar disponibles antes incluso de que un usuario inicie sesión.

Hoy vamos a desmenuzar todas las opciones viables para crear y ejecutar un mini servicio de Windows, partiendo de la carpeta System32, con los métodos más seguros y efectivos. Te explicaremos tanto herramientas nativas como utilidades externas, trucos para distintas versiones del sistema operativo y recomendaciones para no perder el control en el proceso. ¡Vamos allá!

¿En qué consiste crear un servicio de Windows desde System32?

Un servicio de Windows es un programa capaz de ejecutarse en segundo plano, gestionado por el propio sistema operativo. A diferencia de otros programas que arrancan tras iniciar sesión, los servicios pueden ejecutarse incluso si ningún usuario ha iniciado sesión. Ubicarlos en C:\Windows\System32 es habitual para servicios críticos del sistema, aunque cualquier ejecutable ubicado aquí puede estar disponible para todos los usuarios, por lo que es una ubicación común para instalar servicios personalizados.

Herramientas y utilidades necesarias para crear el servicio

Para transformar una aplicación en servicio en Windows, sobre todo versiones como XP, 2003, Windows 7, 8 o 10 y aún Server 2008, existen varias opciones. A continuación, te resumimos las herramientas más empleadas:

  • instsrv.exe – Utilidad del Resource Kit de Microsoft para instalar o quitar servicios.
  • srvany.exe – Permite ejecutar cualquier aplicación como servicio, incluso si esta no fue diseñada para ello.
  • sc.exe – Herramienta de línea de comandos que viene integrada en Windows, utilizada para crear, configurar y controlar servicios.
  • Regedt32.exe/regedit.exe – Editores de registro para ajustar rutas y parámetros del servicio.
  Los siete mejores programas de vectorización para artistas y diseñadores

La combinación de estas utilidades te permitirá instalar servicios personalizados en tu sistema Windows.

Método clásico: usando Instsrv.exe y Srvany.exe

El método más clásico, aún válido para muchas versiones de Windows, consiste en el uso de Instsrv y Srvany, utilidades proporcionadas por Microsoft en los Resource Kits.

Puedes encontrarlas como parte del Windows NT Resource Kit o descargarlas de sitios oficiales de Microsoft. Debes copiar ambos archivos a la carpeta System32 para que estén disponibles desde cualquier lugar del sistema.

El procedimiento general es:

  1. Abrir la consola de comandos (CMD) como administrador.
  2. Ejecutar el comando:
    instsrv.exe "NombreDelServicio" srvany.exe
    Por ejemplo: C:\Windows\System32\instsrv.exe Notepad C:\Windows\System32\srvany.exe
  3. Editar el registro de Windows para asociar el ejecutable que quieres que se ejecute como servicio:
    • Abre el editor de registro con regedit o regedt32.
    • Navega a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\.
    • Crea una subclave llamada Parameters.
    • En esta clave, crea un valor de tipo REG_SZ llamado Application. Su valor debe ser la ruta completa del ejecutable que se desea lanzar como servicio (por ejemplo, C:\Windows\System32\notepad.exe).
  4. Guarda los cambios y cierra el editor de registro.
  5. Inicia el servicio desde el Panel de Control > Servicios o desde la línea de comandos con:
    NET START NombreDelServicio

Este método es sencillo y muy flexible, aunque requiere modificar el registro de Windows, por lo que es recomendable crear una copia de seguridad antes de cualquier alteración.

Método moderno: utilizando SC.EXE para crear servicios

En versiones recientes de Windows, incluida Windows 10 y Server, sc.exe es la herramienta preferida para la gestión de servicios vía línea de comandos. Permite crear nuevos servicios, establecer parámetros de inicio, dependencias y más, todo desde la consola.

La sintaxis básica es:

sc.exe create "NombreServicio" binpath= "C:\Windows\System32\ejemplo.exe" start= auto

Parámetros principales:

  • binpath= Ruta completa al ejecutable a lanzar como servicio (imprescindible).
  • type= Tipo de proceso (own: proceso independiente, share: compartido).
  • start= Tipo de inicio (auto: automático, demand: manual, disabled: deshabilitado, delayed-auto: inicia tras un retardo breve para servicios automáticos, boot/system: para controladores).
  • depend= Especifica servicios de los que depende este servicio (si los hay).
  • obj= Cuenta de usuario bajo la que se ejecuta el servicio (por defecto LocalSystem).
  • displayname= Nombre descriptivo que aparecerá en la consola de servicios.
  Cómo dominar el emulador de terminal en Android

Ejemplo práctico para añadir un servicio que ejecuta un archivo miapp.exe desde System32:

sc.exe create MiServicio binpath= "C:\Windows\System32\miapp.exe" start= auto

Con este método no necesitas editar el registro manualmente y tienes control total desde la línea de comandos.

Configuración y gestión post-instalación

Una vez creado el servicio, puedes ajustarlo según tus necesidades:

  • Cambia el modo de inicio (automático, manual o deshabilitado) desde services.msc o la consola sc.exe config.
  • Inicia o detén el servicio mediante los comandos:
    NET START NombreDelServicio
    NET STOP NombreDelServicio
  • Elimina el servicio si es necesario con:
    sc.exe delete NombreDelServicio

Para servicios creados con srvany/instsrv, puedes editar los parámetros en el registro para cambiar el ejecutable asociado o su ruta.

Trucos y consejos para evitar problemas comunes

Crear servicios modificando rutas y ejecutables puede ocasionar fallos si no se siguen ciertas precauciones. Aquí tienes consejos clave:

  • Haz siempre una copia de seguridad del registro antes de cualquier modificación.
  • Asegúrate de que el ejecutable que vas a convertir en servicio es confiable y compatible con funcionamiento como servicio.
  • Si el servicio no inicia, revisa el registro de eventos de Windows para identificar errores y posibles permisos insuficientes.
  • Utiliza cuentas de usuario con los privilegios mínimos necesarios al crear servicios críticos.

Prueba siempre los servicios en entornos de testeo antes de implementarlos en sistemas de producción.

Solución de errores relacionados con System32 y el registro de Windows

En ocasiones, el propio directorio de System32 o rutas como config\systemprofile\Desktop pueden dar problemas, especialmente tras actualizaciones de Windows o fallos en el sistema. Si te enfrentas a mensajes del tipo “C:\Windows\system32\config\systemprofile\Desktop no está disponible”, sigue estos métodos:

1. Restaurar la ruta predeterminada del escritorio

Desde el explorador de archivos pulsa Win + E, haz clic derecho sobre Escritorio, selecciona Propiedades > Ubicación y pulsa en “Restaurar valores predeterminados”. Eso debería solventar problemas con rutas erróneas.

2. Copiar la carpeta Desktop desde el usuario por defecto

Revela archivos ocultos, accede a C:\Users\Default\ y copia la carpeta Desktop a C:\Windows\system32\config\systemprofile. Así recuperas el escritorio para ese perfil.

  How one can Flip Your SmartPhone into Common Distant Management

3. Revisa la configuración desde el registro

Abre regedit y comprueba en HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders que el valor de Desktop apunta a C:\Users\%USERNAME%\Desktop o a %USERPROFILE%\Desktop.

4. Crear una cuenta de usuario nueva

Si todo falla, crea una nueva cuenta desde el panel de control o mediante el comando control userpasswords2 en el CMD con privilegios. Asigna derechos y traslada los archivos del usuario antiguo.

5. Usa el comprobador de archivos del sistema

Ejecuta sfc /scannow desde el CMD como administrador para buscar y reparar archivos corruptos.

6. Actualiza o reinstala Windows

Si ninguna solución funciona, una actualización in situ o reinstalación puede restaurar el funcionamiento sin perder archivos importantes.

Opciones avanzadas: gestión completa de servicios con SC.EXE

Para los que buscan personalizar completamente el comportamiento de un servicio, SC.EXE ofrece una batería de parámetros:

  • type= para definir si el servicio es propio (own), compartido, kernel, etc.
  • group= para asignar el servicio a un grupo de carga concreto.
  • tag= sí/no para obtener identificadores de controladores.
  • depend= define servicios o grupos de los que depende el servicio.
  • obj= para indicar la cuenta en la que se ejecuta (útil para permisos especiales).
  • displayname= para dar nombre amigable al servicio.
  • password= si el servicio necesita credenciales distintas.

Un ejemplo muy completo sería:

sc.exe create MiServicio binpath= "C:\Windows\System32\miapp.exe" type= own start= auto depend= +TDI NetBIOS obj= "NT AUTHORITY\\LocalService" displayname= "Mi Servicio de Prueba" password= "mi_clave"

Así, puedes automatizar instalaciones de servicios en varios equipos, ideal en entornos empresariales.

Controlar Procesos y Servicios con Taskkill y Sc
Artículo relacionado:
Cómo controlar procesos y servicios en Windows con Taskkill y Sc

Deja un comentario