Estou enfrentando um problema estranho. Eu agendei uma tarefa para lançar um arquivo em lotes. Quando executo a tarefa com a opção Run only when user is logged on
tudo funciona bem. mas eu quero executar esta tarefa em segundo plano e, portanto, estou executando-lo usando a opção Run whether user is logged on or not
. Agora, quando executo a tarefa, ela não está funcionando. Eu recebo 2 erros a seguir. Eu não entendo esse erro. Ajude-me a resolver esse problema.
Task Scheduler failed to launch action "C:\Windows\SYSTEM32\cmd.exe" in instance "{2a7cc950-fad9-4633-9701-af75a0fd220d}" of task "\stmm\Daemon". Additional Data: Error Value: 2147942667.
Task Scheduler failed to start instance "{2a7cc950-fad9-4633-9701-af75a0fd220d}" of "\stmm\Daemon" task for user "GBLADHEDANI\N011940" . Additional Data: Error Value: 2147942667.
Respostas:
Eu tive esse mesmo problema.
A solução para mim foi encontrada no artigo 2452723 da Microsoft KB:
As tarefas agendadas do Windows Vista em diante não são executadas se o caminho no campo "Iniciar em (opcional)" tiver aspas
Basicamente, edite sua tarefa agendada e retire as aspas do campo Iniciar em:
Para receber a mensagem de erro relevante:
1) Converta 2147942667 em hex: 8007010B
2) Pegue os últimos 4 dígitos (010B) e converta em decimal: 267
3) Execute: net helpmsg 267
4) Resultado: "O nome do diretório é inválido."
fonte
Run whether user is logged on or not
, eu estava usando um usuário diferente para executar o aplicativo. Esse novo usuário não tinha permissões apropriadas para ler os dados e, portanto, o erro. Obrigado."C:\Some Path\"
, isso está errado porque possui aspas. Ele precisa dizer `C: \ Some Path` (sem aspas).Para mim, foi o "Start In" - copiei os valores de um servidor antigo e atualizei o caminho para o novo local .exe, mas esqueci de atualizar o local "start in" - se ele não existir, você receba esse erro também
Citando o comentário de @ hans-passant acima, porque é valioso depurar esse problema:
fonte
Isso pode acontecer por mais de um motivo. No meu caso, isso aconteceu devido a um problema de permissões. O usuário que a tarefa estava executando como não tinha permissão para gravar no diretório logs, falhou com este erro.
fonte
Eu tive o mesmo problema, no Windows7.
Eu estava recebendo o erro 2147942667 e um relatório de impossibilidade de executar c: \ windows \ system32 \ CMD.EXE. Tentei com e sem aspas duplas no Script e no Start-in e isso não fez diferença. Tentei substituir todas as referências de caminho para unidades de rede mapeadas e por referências UNC (\ Server1 \ Sharexx \ my_scripts \ run_this.cmd) e isso foi corrigido para mim. Pat.
fonte
Para obter uma resposta mais genérica, converta o valor do erro em hexadecimal e procure o valor hexadecimal em Windows Task Scheduler Error and Success Constants
fonte
2147942667
a HEX:0x8007010B
. Esse valor não aparece no link que você forneceu. Apenas para sua informação, é claro.2147942667 in hex
. O Google também é uma calculadora agora.Para mim, foi o "Start In" - deixei acidentalmente o '.py' no final do nome do meu programa. E eu esqueci de colocar em maiúscula o nome da pasta em que estava ('Aplicativos').
fonte
Para mim, isso ocorreu devido à variável de ambiente PATH do usuário, que parecia não funcionar, mesmo que o usuário estivesse correto, então eu precisava colocar todo o caminho do executável no campo do programa.
fonte