O que causa o erro de tarefa agendada 2147942402?

O que causa o erro de tarefa agendada 2147942402?

Windows Server 2008 R2 (totalmente corrigido)

Estou tentando executar uma tarefa agendada para mover um tipo específico de arquivo de C:\Windows\Temp para E:\Foo_blah_blah_blah_blah\Foo2 e por algum motivo estou recebendo o seguinte erro:

O Agendador de tarefas falhou ao iniciar a instância "{fe0f148a-cece-44a0-a4d1-914aaf21daa8}" da tarefa "\Move Temp Files" para o usuário "FOOBOX\Administrator". Dados Adicionais: Valor do Erro: 2147942402

Alguma ideia de por que isso está acontecendo?

Detalhes adicionais:

  • A tarefa está configurada para ser executada como uma conta que tem autoridade para mover o arquivo.
  • A tarefa está configurada para ser executada independentemente de o usuário estar conectado ou não. Falha em ambos os cenários - mesmos erros.
  • A tarefa está configurada para ser executada no sistema operacional local (Windows Server 2008)
  • O comando é dividido em duas partes. Programa/script: moveAdicionar argumentos:C:\Windows\Temp\*.foo E:\Foo_blah_blah_blah_blah\Foo2\

Se eu executar esse mesmo comando move C:\Windows\Temp\*.foo E:\Foo_blah_blah_blah_blah\Foo2\no prompt de comando do Windows, ele funcionará bem.

o que estou perdendo?

Responder1

Como Ryan Ries apontou, 2147942402 se traduz em "Arquivo não encontrado" - o que é uma resposta muito apropriada. Tente pressionar Win+R, coloque "move" e pressione enter - esse é o equivalente interativo do que sua tarefa não está conseguindo fazer.

A razão é que MOVEnão é um programa, mas um comando nativo em cmd.

Deveria ser:

Programa: "cmd.exe"
Argumentos:"/c move C:\Windows\Temp\*.foo E:\Foo_blah_blah_blah_blah\Foo2\"

Responder2

O motivo é: a tarefa está configurada para ser excluída quando não estiver programada para ser executada novamente. Isso é configurado na guia Configurações. A exclusão da Tarefa é feita no momento da expiração do Trigger que dispara a Tarefa. Se o tempo de expiração do gatilho for exatamente igual ao horário de início do gatilho, pode (incidentalmente) acontecer que a tarefa seja excluída alguns segundos antes de seu gatilho ser acionado. Isso causa o evento 101 com código de razão 2147942402. A solução é definir o tempo de expiração do gatilho 1 minuto depois do horário de início do gatilho.

Responder3

com Powershell, especifique o caminho completo no comando, assim C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

Responder4

A resposta que Matthias postou me ajudou a descobrir meu problema.

Eu coloquei toda a linha de comando no campo "Programa", caminho e argumentos todos juntos; Eu não tinha notado que havia um campo de entrada "Args" separado. Quando separei os argumentos e os inseri separadamente, minha tarefa agendada funcionou perfeitamente.

Diagnóstico: o sistema operacional estava procurando um programa chamado "C:\bin\someprog.BAT connect keep"em vez de procurá-lo "C:\bin\someprog.BAT"e invocá-lo com argumentos connect keep.

Meu erro, agora corrigido.

informação relacionada