Eu tenho um arquivo em lotes daily.bat, este é o código:
cd C:\inetpub\wwwroot\infoweb\factuur\cron
c:\PHP\php.exe -f ./cron_pdf.php
ftp -s:ftp_upload.txt ftp.site.be
E criei uma tarefa com o agendador de tarefas no Windows 7. Quando executo o lote manualmente, tudo corre bem, mas quando tento executá-lo com o agendador de tarefas, nada acontece.
Minha ação é
'run script' "C:\inetpub\wwwroot\site\x\cron\daily.bat"
O UAC está desativado e eu sou Admin.
Alguma idéia de por que isso não está funcionando?
Respostas:
Eu enfrentei o mesmo problema, mas encontrei outra solução sem precisar modificar meu script em lote.
A única coisa que eu perdi foi nas configurações de 'Ação' - opção "Iniciar em (opcional)".
Vá nas propriedades da tarefa -> guia Ação -> Editar -> Preencha como abaixo:
C:\Users\beruk\bodo.bat
C:\Users\beruk\
(não coloque aspas em Iniciar)Então clique em OK
Funciona para mim. Boa sorte!
fonte
Start In
conjunto de parâmetros, meu arquivo em lotes agendado não seria executado. (Windows 7)Start in
é a principal razão pela qual funcionou para mim.Nenhum dos métodos acima funcionou. Eu tentei dessa maneira, como disse em um tutorial e funcionou.
Açao:
Programa / script:
Adicione argumentos:
Trabalhou para mim no Win7 Pro. Você deve ter uma conta com uma senha (senhas em branco não são boas)
fonte
Para aqueles cujos arquivos bat ainda não estão funcionando no Agendador de tarefas do Windows 8+, uma coisa que eu gostaria de acrescentar à resposta de Ghazi - depois de muito sofrimento:
1) Em Ações, escolha "Criar tarefa BASIC ", não "Criar tarefa"
Fiz isso por mim, além dos outros problemas a não esquecer:
Isso funcionou sem a necessidade de acionar um prompt de comando.
(Desculpe, meu representante é muito baixo para adicionar minha dica de tarefa básica aos comentários de Ghazi)
fonte
Verifique se "Iniciar" não tem aspas.
fonte
Está funcionando agora. Foi o que eu fiz. Você provavelmente não precisará de todas essas etapas para fazê-lo funcionar, mas apenas para ter certeza de experimentar todas elas:
Verifique os parâmetros da conta da sua tarefa agendada e verifique se eles estão configurados para execução, independentemente de alguém estar ou não conectado à máquina
verifique executar com a maioria dos privilégios / direitos
Certifique-se de ir para o caminho completo primeiro: cd C: \ inetpub \ wwwroot \ infoweb \ factuur \ cron
Não use aspas duplas nos arquivos em lote (não sei por que, mas parece ajudar)
Seja superadministrador, digite 'Net user administrator / active: yes' no prompt de comando, efetue logout e logon como superadministrador, para que o UAC esteja desativado
fonte
Certifique-se de que "Start In" NÃO termine com uma barra invertida.
fonte
Tive um problema em que minha tarefa não estava sendo disparada simplesmente porque estava sendo executada em um laptop sem cabo de alimentação ... Na guia condições, por padrão, é verificado para que uma tarefa não seja executada enquanto a energia CA não estiver conectada.
fonte
No Windows7 Pro, descobri que a solução da Arun funcionava para mim: eu conseguia que isso funcionasse mesmo com "nenhum usuário conectado"; optei por usar privilégios mais altos.
De experiência anterior, você deve ter uma conta com uma senha (senhas em branco não são boas) e, se o programa não solicitar a senha quando você concluir o assistente, volte e edite alguma coisa até que isso aconteça!
Este é o método caso não esteja claro o que funcionou
fonte
Eu brinquei com isso por várias horas e tentei muitas sugestões diferentes.
Finalmente consegui fazer o seguinte:
fonte
Se todo o resto falhar para você aqui, verifique se o usuário que você está tentando executar a tarefa tem acesso ao arquivo que está tentando usar.
No meu caso, eu estava tentando executar um arquivo em lotes de C: \ Users \ Administrator \ Desktop que a conta não pôde acessar. Mover para um local neutro em C: \ resolveu o problema.
fonte
Verifique qual conta de usuário você usa para executar nossa tarefa. Pode acontecer que você execute sua tarefa com um usuário diferente do usuário padrão e esse usuário exija alguns privilégios adicionais. Também pode acontecer que a tarefa seja executada, mas você não pode ver nenhum efeito, porque o arquivo em lote aguarda alguma resposta do usuário, portanto, verifique o gerenciador de tarefas se o processo estiver em execução. Depois que eu agendar um lote com svn update de alguma página da web, o processo trava porque o svn pediu para aceitar o certificado do servidor.
fonte
C: \ Necessary_file \ Reqular_task \ QDE \ cmd_practice \
fonte
Eu posto a resposta a esta pergunta aqui e aqui .
fonte
O uso do botão Executar na janela principal do Agendador de tarefas para testar várias variações finalmente encontrou as configurações corretas. Essas duas opções devem ser combinadas: -Executar somente quando o usuário estiver conectado -Executar com privilégios mais altos. Todas as outras variações falharam. É irritante o tempo todo desperdiçado com isso, mas pelo menos funciona. SO: VERSÃO WINDOWS 8 CORE (BASIC)
fonte
Tente executar a tarefa com altos privilégios.
coloque um \ no final do caminho em "iniciar na pasta" como c: \ temp \
Não sei por que, mas às vezes isso funciona para mim.
fonte
Açao:
Start a Program
Programa / script:
C:\Windows\System32\cmd.exe
Adicione argumentos:
/k start "" "E:\scripts\example.bat"
Adicione
exit
ao final do seu arquivo em lotes.A janela cmd não será exibida se você selecionar
Run whether user is logged in or not
. Você precisa selecionarRun only when user is logged on
para ver a janela em ação.fonte