Si has visto un parpadeo rápido en pantalla cuando se ejecuta un archivo BAT programado, significa que se está abriendo el Símbolo del sistema para ejecutarlo, algo molesto y que interrumpe el trabajo. En esta guía te ayudamos a ejecutar tu archivo BAT en segundo plano de forma silenciosa con el Programador de tareas, para que tus tareas automatizadas se completen sin interrupciones.
Te recomendamos revisar ⚠️ Aspectos a tener en cuenta antes de continuar.
¿Quieres profundizar en el tema? Mira nuestro vídeo: Ejecutar un archivo BAT en segundo plano con el Programador de tareas en Windows 11.
📌Ve directamente a las estrategias de implementación recomendadas:
Configurar el Programador de tareas para ejecutar un archivo BAT en segundo plano
Este método usa la configuración nativa de Windows 11 para ejecutar tu archivo BAT como un proceso en segundo plano, sin ventanas emergentes molestas.
📌Caso de uso: perfecto para tareas administrativas rutinarias, como la limpieza de registros y las copias de seguridad, donde lo más importante es que todo ocurra en silencio.
📌Requisitos previos: asegúrate de usar el SO Windows 11, contar con permisos de administrador, tener tu archivo por lotes ya creado y conocer lo básico de la herramienta.
- Abre el Programador de tareas:
- Abre el cuadro de diálogo Ejecutar (Win + R), escribe taskschd.msc y pulsa Intro.
- También puedes buscar Programador de tareas en la barra de tareas.
- Abre el cuadro de diálogo Ejecutar (Win + R), escribe taskschd.msc y pulsa Intro.

- Crea una tarea:
- Haz clic derecho en Biblioteca del Programador de tareas y selecciona Crear tarea (no Crear tarea básica). También puedes seleccionarlo en el panel Acciones.

- Introduce lo siguiente en la pestaña General (ajustes críticos):
- Nombre: por ejemplo, Silent BAT Runner”
- Marca Ejecutar tanto si el usuario inició sesión como si no (así la tarea se ejecutará en segundo plano del sistema).
- Marca Ejecutar con los privilegios más altos (si se requiere acceso de administrador).
- Marca Oculto.
- En el menú desplegable Configurar para, selecciona Windows 11.

- Introduce lo siguiente en la pestaña Desencadenadores:
- Selecciona Nuevo y establece la programación (por ejemplo, a diario a las 2:00).

- Introduce lo siguiente en la pestaña Acciones:
- Selecciona Nuevo y establece la acción en Iniciar un programa.
- En Programa o script: pega la ruta completa de tu archivo BAT.

- Guarda y autoriza:
- Haz clic en Aceptar e introduce tu contraseña cuando se te solicite.
💡Nota: aún puede aparecer un parpadeo breve del Símbolo del sistema. Para que sea totalmente silencioso, sigue los procedimientos complementarios que se indican más abajo.
Métodos alternativos para ejecutar un archivo BAT en segundo plano de forma silenciosa
Si prefieres eliminar por completo ese parpadeo de una fracción de segundo del Símbolo del sistema cuando un archivo BAT se ejecuta en segundo plano, aquí tienes dos procedimientos para silenciarlo del todo.
Opción 1: usar VBScript para ocultar la ventana de CMD
VBScript actúa como un envoltorio silencioso y ejecuta tu archivo BAT sin dejar ningún rastro visual.
📌Caso de uso: es ideal para ejecutar el archivo BAT en kioscos, sistemas de presentación o estaciones de trabajo de usuarios, donde es fundamental que no haya ninguna interrupción visual.
- Crea un archivo .vbs:
- Abre el Bloc de notas (búscalo en la barra de tareas) e introduce este script:
Set WshShell = CreateObject("WScript.Shell")WshShell.Run Chr(34) & "C:\Path\To\Your\BatchFile.bat" & Chr(34), 0Set WshShell = Nothing
- Sustituye la ruta del script (C:\Path\To\Your\BatchFile.bat) por la ubicación de tu archivo BAT.
- Guárdalo como Runner.vbs (comprueba que la extensión sea .vbs y no .txt).
- Programa el VBScript:
- En el Programador de tareas, crea otra tarea e introduce los mismos datos en las pestañas General y Desencadenadores que en el procedimiento principal anterior.
- En la pestaña Acciones, introduce lo siguiente:
- Acción: Iniciar un programa
- Programa: wscript.exe
- Argumentos: ruta de tu archivo VBScript

Este procedimiento ejecuta tu archivo BAT en silencio porque el indicador 0 del script oculta por completo la ventana que parpadea. El VBScript lo ejecuta de forma invisible mediante Windows Script Host.
Opción 2: usar PowerShell (.ps1) para ocultar la ejecución del BAT
PowerShell ofrece un control moderno y flexible de la visibilidad de los procesos con un solo comando.
📌Caso de uso: este procedimiento es excelente para entornos donde PowerShell ya es la herramienta habitual, o para scripts que necesitan lógica adicional antes de ejecutar el BAT.
- Crea un archivo .ps1:
- Abre el Bloc de notas (búscalo en la barra de tareas) e introduce este script:
Start-Process "C:\Path\To\Your\BatchFile.bat" -WindowStyle Hidden
- Actualiza la ruta con la ubicación de tu archivo BAT.
- Guárdalo como StealthRunner.ps1.
- Programa el script de PowerShell en el Programador de tareas:
- En el Programador de tareas, crea otra tarea e introduce los mismos datos en las pestañas General y Desencadenadores que en el procedimiento principal anterior.
- En la pestaña Acciones, introduce lo siguiente:
- Acción: Iniciar un programa
- Programa: powershell.exe
- Argumentos: introduce este script:
-ExecutionPolicy Bypass -File "C:\Path\To\StealthRunner.ps1"
El método de PowerShell incluye el parámetro -WindowStyle Hidden, que suprime la consola a nivel de kernel.
Procedimientos complementarios para evitar que se robe el foco al ejecutar un archivo BAT
Algunos ajustes complementarios pueden reducir aún más las interrupciones al ejecutar archivos BAT y otras tareas en segundo plano en Windows 11.
Opción 1: modificar el Registro de Windows para evitar que se robe el foco
Este método retrasa los cambios de foco entre aplicaciones, con lo que se reduce el impacto de cualquier parpadeo de ventana residual.
📌Caso de uso: este procedimiento es ideal cuando un usuario o una organización quiere evitar cualquier interrupción del foco provocada por una tarea.
⚠️ Advertencia: editar el Registro de forma incorrecta puede provocar una grave inestabilidad del sistema. Haz siempre una copia de seguridad del Registro o crea un punto de restauración del sistema antes de continuar. Consulta la sección ⚠️ Aspectos a tener en cuenta para saber más.
- Abre el Editor del Registro:
- Abre el cuadro de diálogo Ejecutar (Win + R), escribe regedit y pulsa Intro.

- Ve a la clave de la dirección:
- Navega o pega esta ruta: HKEY_CURRENT_USER\Control Panel\Desktop

- Crea o modifica el DWORD:
- Haz doble clic en el DWORD Foregroundlocktimeout.
- Si no existe, haz clic derecho en el panel derecho y selecciona Nuevo > Valor de DWORD (32 bits).
- Asígnale el nombre Foregroundlocktimeout.
- Haz doble clic en el DWORD Foregroundlocktimeout.

- Establece los datos del valor:
- Asigna al DWORD el valor 200000 en decimal.

- Aplica los cambios:
- Reinicia el dispositivo o ejecuta esto en el Símbolo del sistema:
taskkill /f /im explorer.exe && start explorer.exe
Esto no evita que aparezca la ventana de CMD, a diferencia de los métodos de la sección anterior, pero sí impide que se robe el foco si alguna ventana llega a parpadear.
Opción 2: ajustar la directiva de grupo para limitar los cambios de foco por avisos
Esta directiva suprime las advertencias de seguridad que podrían interrumpir el trabajo al ejecutar scripts.
📌Caso de uso: entornos empresariales en los que los scripts descargados muestran ventanas de Advertencia de seguridad de Abrir archivo durante la ejecución de la tarea.
💡Nota: este método solo está disponible en las ediciones Windows 11 Pro, Enterprise y Education. Si usas la edición Home, te recomendamos el método del Editor del Registro.
- Abre el Editor de directivas de grupo:
- Abre el cuadro de diálogo Ejecutar (Win + R), escribe gpedit.msc y pulsa Intro.
- Ve a la directiva:
- Sigue esta ruta: Configuración de usuario > Plantillas administrativas > Componentes de Windows > Administrador de archivos adjuntos
- Activa la directiva clave:
- Haz doble clic en No conservar información de zona en los archivos adjuntos.
- Selecciona Habilitada y haz clic en Aceptar.
- Aplica los cambios:
- Reinicia el dispositivo o ejecuta gpupdate /force en el Símbolo del sistema.
Cómo comprobar que el archivo BAT se ejecuta en segundo plano
Confirma que tu archivo por lotes se ejecuta en silencio y sin fallos tras la configuración con estas comprobaciones rápidas.
- Lanza la tarea manualmente:
- En el Programador de tareas, haz clic derecho en la tarea que has creado y selecciona Ejecutar.
- Observa la pantalla para ver si el Símbolo del sistema parpadea o roba el foco.
- Revisa el historial del Programador de tareas:
- En la Biblioteca del Programador de tareas, haz clic derecho en tu tarea.
- Selecciona Propiedades, ve a la pestaña Historial y comprueba el ID de evento:
- 100: significa que la tarea se completó.
- 101: significa que la tarea no se pudo iniciar.
- 201: significa que la acción no se pudo ejecutar.
- Valida los registros y la salida:
- Comprueba la ubicación del registro o de la salida de tu archivo BAT (por ejemplo, C:\Logs\output.txt).
- Si no hay registros, añade esto temporalmente a tu archivo BAT:
echo %date% %time%: Task ran >> C:\Verify\log.txt
⚠️ Aspectos a tener en cuenta
En esta sección se destacan los posibles problemas que debes tener presentes mientras sigues esta guía.
| Riesgos | Posibles consecuencias | Cómo revertirlo |
| 1. Configuración incorrecta de «Ejecutar tanto si el usuario inició sesión como si no» o desencadenadores mal configurados | La tarea falla sin avisar o el archivo BAT no se ejecuta | Vuelve a abrir la tarea y comprueba la configuración. O haz una prueba con un registro echo en el archivo BAT |
| 2. El antivirus bloquea wscript.exe o hay errores de sintaxis en el archivo VBS | El script se detiene sin avisar o no hay registros de error | Añade wscript.exe a la lista de permitidos del antivirus O depura el VBS con cscript Runner .vbs |
| 3. Las directivas de ejecución bloquean el script o las rutas con espacios no están entre comillas | PowerShell se cierra con un error de directiva | Ejecuta Set-ExecutionPolicy RemoteSignedO pon las rutas entre comillas: |
| 4. Cometer errores en el Registro, como erratas o editar la clave equivocada | Inestabilidad del sistema; el Explorador se bloquea | Restaura la copia de seguridad del registro o elimina el DWORD erróneo y reinicia. Mira Cómo hacer una copia de seguridad del Registro de Windows y restaurarlo para saber más. |
| 5. Desactivar los avisos de seguridad en todo el sistema | Los scripts maliciosos se ejecutan sin advertencias | Vuelve a poner la directiva de grupo en Deshabilitada/No configurada o ejecuta gpupdate /force. |
Consideraciones clave para ejecutar archivos BAT en segundo plano
Aplica estas buenas prácticas para conseguir una ejecución silenciosa fiable y segura.
Gestión de permisos
Asegúrate de que tu archivo BAT (y los archivos de script VBS/PS1 complementarios) tengan permisos de lectura y ejecución para que la tarea se ejecute con la cuenta de usuario y se registre la ejecución en el sistema. Así las tareas se ejecutarán sin errores.
💡Consejo: puedes ejecutar icacls "C:\Your\BatchFile.bat" en el Símbolo del sistema para comprobar si el archivo tiene los privilegios necesarios.
Protocolo de pruebas por fases
Prueba siempre el procedimiento en un entorno controlado antes de implementarlo en el dispositivo del usuario. Así podrás comprobar si se puede llevar a cabo sin errores, como problemas de compatibilidad o errores de sintaxis, en ese entorno, y evitarás posibles inestabilidades del sistema.
Ajustes de modificación del sistema
Como ya se ha mencionado, antes de editar el Registro o la directiva de grupo, crea un punto de restauración, exporta las claves del registro y haz una copia de seguridad de las configuraciones de las tareas para proteger tu sistema.
Ejecuta archivos BAT en silencio en Windows 11 y trabaja sin interrupciones
Optimiza las ejecuciones en segundo plano de tu sistema con el Programador de tareas de Windows 11 y elimina los molestos parpadeos de CMD. Usa los métodos de esta guía para que tus tareas se ejecuten sin interrupciones. Cambia la forma en la que se ejecutan tus copias de seguridad, limpiezas o scripts en segundo plano: con potencia y de forma invisible.
Temas relacionados
- Cómo activar o desactivar el historial del Programador de tareas en Windows
- Cómo activar o desactivar el historial del Programador de tareas en Windows (vídeo)
- Solución de problemas del servicio Programador de tareas en Windows 11
Guía de inicio rápido
NinjaOne permite ejecutar archivos BAT en segundo plano mediante su función de automatizaciones programadas. Estos son los puntos clave:
- Puedes crear automatizaciones programadas que ejecuten scripts o aplicaciones en los dispositivos incluidos en una política.
- Las automatizaciones programadas se pueden configurar para ejecutarse:
- A demanda
- Según una programación (diaria, semanal, mensual)
- Al iniciar el sistema
- Al iniciar sesión el usuario
Para ejecutar un archivo BAT en segundo plano:
- Ve a Administration > Policies
- Selecciona Agent Policy
- Haz clic en Scheduled Automations
- Haz clic en «Add a Scheduled Automation»
- Configura:
- Nombre y descripción de la automatización
- Programación (diaria, semanal, etc.)
- Selecciona tu archivo BAT en la Automation Library
- Elige ejecutarlo como System, como el usuario actual o con credenciales específicas
Notas importantes:
- Si el inicio rápido está activado, puede impedir que las tareas programadas se ejecuten al iniciar el sistema
- Puedes añadir varios scripts o aplicaciones, que se ejecutarán en orden
- Puedes configurar notificaciones o tickets para cuando se ejecute la automatización
