/
/

Executar um arquivo BAT em segundo plano usando o Agendador de Tarefas no Windows 11

by Mauro Mendoza, IT Technical Writer
Run BAT file in the Background Using Task Scheduler in Windows 11 blog banner image

Resumo instantâneo

Esta postagem do blog NinjaOne oferece uma lista abrangente de comandos CMD básicos e um mergulho profundo nos comandos do Windows, com +70 comandos CMD essenciais para usuários iniciantes e avançados. Explicamos sobre comandos práticos de prompt de comando para gerenciamento de arquivos, navegação em diretórios, solução de problemas de rede, operações de disco e automação, tudo com exemplos reais para maximizar a produtividade. Seja para aprender comandos básicos CMD ou dominar ferramentas avançadas de CLI do Windows, este guia ajuda você a usar o prompt de comando com mais eficiência.

Se você já percebeu um breve piscar de tela quando um arquivo BAT agendado é executado, isso significa que o Prompt de Comando está aparecendo para executá-lo, o que é incômodo e frustrante. Neste guia, vamos ajudá-lo a executar seu arquivo BAT discretamente em segundo plano usando o Agendador de Tarefas, garantindo que suas tarefas automatizadas sejam executadas sem interrupções.

Recomendamos verificar ⚠️ O que você deve observar antes de prosseguir.

📌Pule diretamente para as estratégias de implantação recomendadas:

Clique para escolher um método💻

Ideal para usuários individuais

💻💻💻

Ideal para empresas

Configurar o Agendador de Tarefas para executar um arquivo BAT em segundo plano
Métodos alternativos para executar um arquivo BAT silenciosamente em segundo plano
Use o VBScript para ocultar a janela do CMD
Use o PowerShell (.ps1) para ocultar a execução do BAT
Procedimentos de apoio para evitar a perda de foco ao executar um arquivo BAT
Modifique o Registro do Windows para impedir o roubo de foco
Ajustar a Política de Grupo para limitar as mudanças de foco baseadas em solicitações

Configurar o Agendador de Tarefas para executar um arquivo BAT em segundo plano

Esse método utiliza as configurações nativas do Windows 11 para executar seu arquivo BAT como um processo em segundo plano, evitando janelas pop-up que atrapalham.

📌Caso de uso: Perfeito para tarefas administrativas de rotina, como limpeza de logs e backups, nas quais o funcionamento silencioso é fundamental.

📌Pré-requisitos: Certifique-se de estar usando o sistema operacional Windows 11, de ter direitos de administrador, de ter seu arquivo em lote já pronto e de ter um conhecimento básico da ferramenta.

  1. Abrir o Agendador de Tarefas:
    • Abra a caixa de diálogo “Executar” (Win + R), digite taskschd.msc e pressione Enter.
      • Como alternativa, você pode procurar pelo “Agendador de Tarefas” na barra de tarefas.

Abrir o Agendador de Tarefas

  1. Criar uma tarefa:
    • Clique com o botão direito do mouse em “Biblioteca do Agendador de Tarefas” e selecione “Criar tarefa” (não “Tarefa básica”). Você também pode selecioná-la no painel “Ações ”.

Criar uma tarefa

  1. Insira as seguintes informações na guia “Geral” (Configurações essenciais):
    • Nome: por exemplo, “Silent BAT Runner”
    • Selecione a opção “Executar independentemente de o usuário estar conectado ou não” ( isso fará com que a tarefa seja executada em segundo plano no sistema).
    • Selecione “Executar com privilégios máximos” (caso seja necessário acesso de administrador).
    • Selecione “Oculto”.
    • No menu suspenso “Configurar para ”, selecione Windows 11.

Janela “Guia Geral” (Configurações essenciais)

  1. Insira o seguinte na guia “Triggers”:
    • Selecione “Novo” e, em seguida, defina a programação (por exemplo, diariamente às 2h da manhã).

Guia “Gatilhos”

  1. Insira o seguinte na guia “Ações”:
    • Selecione “Novo” e, em seguida, defina a “Ação ” como “Iniciar um programa”.
    • No programa/script: Cole o caminho completo para o seu arquivo BAT.

Guia “Ações”

  1. Salvar e autorizar:
    • Clique em OK e, em seguida, digite sua senha quando solicitado.

💡Observação: Ainda pode ocorrer um breve flash na janela do Prompt de Comando. Para obter silêncio total, siga os procedimentos descritos a seguir.

Métodos alternativos para executar um arquivo BAT silenciosamente em segundo plano

Se você preferir eliminar completamente aquele piscar instantâneo do Prompt de Comando quando um arquivo BAT é executado em segundo plano, veja a seguir dois procedimentos que você pode usar para silenciá-lo completamente.

Opção 1: Use o VBScript para ocultar a janela do CMD

O VBScript funciona como um wrapper silencioso, executando seu arquivo BAT sem deixar nenhum vestígio visual.

📌Caso de uso: Isso é ideal ao executar o arquivo BAT em quiosques, sistemas de apresentação ou estações de trabalho de usuários, onde é fundamental que não haja nenhuma interrupção visual.

  1. Crie um arquivo .vbs:
    • Abra o Bloco de Notas (procure na barra de tarefas) e, em seguida, digite este script:

Set WshShell = CreateObject("WScript.Shell")
WshShell.Run Chr(34) & "C:\Path\To\Your\BatchFile.bat" & Chr(34), 0
Defina WshShell = Nothing

    • Substitua o caminho no script (C:\Path\To\Your\BatchFile.bat) pelo local do seu arquivo BAT.
    • Salve como Runner.vbs (certifique-se de que a extensão seja . vbs, e não . txt).
  1. Programe o VBScript:
    • No “Agendador de Tarefas”, crie outra tarefa, inserindo os mesmos detalhes nas guias “Geral” e “Gatilhos” que no procedimento principal descrito acima.
    • Na guia “Ação”, insira o seguinte:
      • Ação: Iniciar um programa
      • Programa: wscript.exe
      • Argumentos: Caminho para o seu arquivo VBScript

Agende o VBScript

Este procedimento permite executar seu arquivo BAT de forma silenciosa, já que o sinalizador 0 no script oculta completamente a janela que aparece rapidamente. O VBScript executa isso de forma invisível usando o Windows Script Host.

Opção 2: Use o PowerShell (.ps1) para ocultar a execução do BAT

O PowerShell oferece um controle moderno e flexível sobre a visibilidade dos processos com um único comando.

📌Caso de uso: Esse procedimento é ótimo para ambientes em que o PowerShell já é a ferramenta ideal utilizada, ou para scripts que precisam de lógica adicional antes da execução do BAT.

  1. Crie um arquivo .ps1:
    • Abra o Bloco de Notas (procure na barra de tarefas) e, em seguida, digite este script:

Start-Process "C:\Caminho\Para\Seu\Arquivo\Batch.bat" -WindowStyle Hidden

    • Atualize o caminho com a localização do seu arquivo BAT.
    • Salve-o como StealthRunner.ps1.
  1. Programe o script do PowerShell no Agendador de Tarefas:
    • No “Agendador de Tarefas”, crie outra tarefa, inserindo os mesmos detalhes nas guias “Geral” e “Gatilhos” que no procedimento principal descrito acima.
    • Na guia “Ação”, insira o seguinte:
      • Ação: Iniciar um programa
      • Programa: powershell.exe
      • Argumentos: Digite este script:

-ExecutionPolicy Bypass -File "C:\Path\To\StealthRunner.ps1"

A abordagem do PowerShell conta com o script -WindowStyle Hidden, que oculta o console no nível do kernel.

Procedimentos de apoio para evitar a perda de foco ao executar um arquivo BAT

Ajustes complementares podem minimizar ainda mais as interrupções durante a execução de arquivos BAT em segundo plano e outras tarefas no Windows 11.

Opção 1: Modifique o Registro do Windows para impedir o roubo de foco

Essa abordagem retarda as mudanças de foco do aplicativo, reduzindo o impacto de quaisquer piscadas residuais na janela.

📌Caso de uso: Esse procedimento é ideal quando um usuário ou uma organização deseja evitar qualquer interrupção do foco causada por uma tarefa.

⚠️ Aviso sobre o “ ”: A edição incorreta do Registro pode causar grave instabilidade no sistema. Sempre faça um backup do Registro ou crie um ponto de restauração do sistema antes de prosseguir. Confira o ⚠️ Pontos a serem observados para saber mais.

  1. Abra o Editor do Registro:
    • Abra a caixa de diálogo “Executar” (Win + R) e, em seguida, digite regedit e pressione Enter.

Abrir o Editor do Registro

  1. Acesse a chave de endereço:
    • Navegue até este caminho ou cole-o aqui: HKEY_CURRENT_USER\Painel de Controle\Área de Trabalho 

Ir para a chave de endereço

  1. Crie/modifique o DWORD:
    • Clique duas vezes no valor DWORD “Foregroundlocktimeout ”.
      • Se ele não existir, clique com o botão direito do mouse no painel direito e selecione “Novo” > “ > ” > “Valor DWORD (32 bits)”.
      • Nomeie o DWORD como Foregroundlocktimeout.

Criar/modificar o DWORD

  1. Defina os dados do valor:
    • Defina o valor do DWORD como 200000 no sistema decimal.

Definir os dados do valor

  1. Aplicar alterações:
    • Reinicie o dispositivo ou execute o seguinte no Prompt de Comando:

taskkill /f /im explorer.exe && start explorer.exe

Isso não impedirá que a janela do CMD apareça, ao contrário das abordagens da seção anterior, mas evitará que o foco seja roubado caso uma janela consiga piscar.

Opção 2: Ajustar a Política de Grupo para limitar as mudanças de foco baseadas em solicitações

Esta política suprime os avisos de segurança que poderiam interromper os fluxos de trabalho durante a execução de scripts.

📌Caso de uso: Ambientes corporativos nos quais scripts baixados acionam janelas pop-up de “Aviso de segurança ao abrir arquivo” durante a execução de tarefas.

💡Observação: Essa abordagem só pode ser realizada nas edições Pro, Enterprise e Education do Windows 11. Para usuários da edição Home, recomendamos usar o método do Editor do Registro.

  1. Abra o Editor de Política de Grupo:
    • Abra a caixa de diálogo “Executar” (Win + R) e, em seguida, digite e pressione Enter em gpedit.msc.
  2. Acesse a política:
    • Siga este caminho: Configuração do usuário > Modelos administrativos > Componentes do Windows > Gerenciador de anexos 
  3. Ativar política de chaves:
    • Clique duas vezes em “Não preservar informações de zona em anexos de arquivo”.
    • Selecione “Ativado” e, em seguida, clique em “OK”.
  4. Aplicar alterações:
    • Reinicie o dispositivo ou execute o comando `gpupdate /force` no Prompt de Comando.

Como verificar se o arquivo BAT está sendo executado em segundo plano

Confirme se o seu arquivo em lote é executado de forma silenciosa e sem falhas após a configuração, realizando essas verificações rápidas.

  1. Execute a tarefa manualmente:
    • No Agendador de Tarefas, clique com o botão direito do mouse na tarefa que você criou e selecione “Executar”.
    • Fique de olho na tela caso o Prompt de Comando pisque ou perca o foco.
  2. Verificar o histórico do Agendador de Tarefas:
    • Na Biblioteca do Agendador de Tarefas, clique com o botão direito do mouse na sua tarefa.
    • Selecione “Propriedades”, vá até a guia “Histórico” e verifique o ID do evento:
      • 100: Isso significa que a tarefa foi concluída.
      • 101: Isso significa que a tarefa não conseguiu ser iniciada.
      • 201: Isso significa que a ação não foi executada.
  3. Validar logs e saídas:
    • Verifique o local do arquivo de log/saída do seu arquivo BAT (por exemplo, C:\Logs\output.txt).
    • Se não houver logs, adicione isso ao seu arquivo BAT temporariamente:

echo %date% %time%: A tarefa foi executada em >> C:\Verify\log.txt

⚠️ Pontos a serem observados

Esta seção destaca os possíveis desafios que devem ser levados em consideração ao seguir este guia.

RiscosPossíveis consequênciasReversões
1. Configuração incorreta da opção “Executar mesmo que o usuário esteja conectado” ougatilhos mal configurados no A tarefa falha sem exibir nenhuma mensagem ou o arquivo BAT não é executadoReabra a tarefa e verifique as configurações.

Ou faça um teste com o comando ` echo log ` em um arquivo BAT

2. O antivírus bloqueia o wscript.exe ouo Erros de sintaxe no arquivo VBSO script é interrompido silenciosamente ou não há registros de errosAdicione o wscript.exe à lista de permissões do antivírus

Ou depurar o VBS usando o cscript Runner .vbs

3. As políticas de execução bloqueiam scripts ou Caminhos com espaços sem aspasO PowerShell é encerrado devido a um erro de políticaExecutar Set-ExecutionPolicy RemoteSigned

Ou coloque os caminhos entre aspas: “C:\Meus Scripts\file.bat”

4. Cometer erros no Registro, como erros de digitação ou editar a chave erradaInstabilidade do sistema; o Explorer travaRestaure o backup do Registro ou exclua o DWORD incorreto e, em seguida, reinicie o computador.

Assista ao vídeo “Como fazer backup e restaurar o Registro do Windows” para saber mais.

5. Desativando os avisos de segurança em todo o sistemaScripts maliciosos são executados sem avisosReverta a política de grupo para “Desativada/Não configurada” ou execute gpupdate /force.

Principais considerações para executar arquivos BAT em segundo plano

Implemente essas práticas recomendadas para garantir uma execução silenciosa confiável e segura.

Gerenciamento de permissões

Certifique-se de que seu arquivo BAT (e os arquivos de script VBS/PS1 associados) tenham direitos de leitura e execução para executar a tarefa na conta do usuário e para registrar a execução no sistema. Isso garantirá que as tarefas sejam executadas sem problemas e sem erros.

💡Dica: Você pode executar icacls "C:\Seu\ArquivoDeLote.bat" no Prompt de Comando para verificar se o arquivo possui os privilégios.

Protocolo de testes em etapas

Certifique-se de testar o procedimento primeiro em um ambiente controlado, antes de implementá-lo no dispositivo do usuário. Isso permitirá que você verifique se o procedimento pode ser executado sem erros — como problemas de compatibilidade ou erros de sintaxe — no ambiente, evitando possíveis instabilidades do sistema.

Configurações de modificação do sistema

Conforme mencionado, antes de fazer alterações no Registro ou na Política de Grupo, crie um ponto de restauração, exporte as chaves do Registro e faça backup das configurações das tarefas para proteger seu sistema.

Execute arquivos BAT em modo silencioso no Windows 11 para manter o foco sem interrupções

Otimize a execução de seus sistemas em segundo plano usando o Agendador de Tarefas do Windows 11 para eliminar os flashes indesejados do CMD. Utilize os métodos descritos neste guia para garantir o funcionamento ininterrupto das tarefas. Reforme a forma como seus backups, limpezas ou scripts são executados em segundo plano de maneira eficiente e discreta com este guia.

Tópicos relacionados

[início rápido]

Recomendados para você

Pronto para simplificar as partes mais difíceis da TI?