O Agendador de Tarefas não permitirá a reutilização de nomes de tarefas de tarefas antigas e excluídas automaticamente criadas com a opção / Z

2

Ao tentar colocar isso em prática , criei várias tarefas agendadas com o /Z switch que, de acordo com a documentação, é ...

A value that marks the task to be deleted after its final run.

Consegui criar tarefas agendadas que foram automaticamente excluídas depois que elas expiraram, mas não consegui criar novas tarefas com o mesmo nome depois disso. Aqui está um log parcial dos comandos que usei:

C:\WINDOWS\system32>schtasks /create /TN testtask1 /TR calc.exe /SC ONCE /ST 20:06
SUCCESS: The scheduled task "testtask1" has successfully been created.

C:\WINDOWS\system32>schtasks /create /TN testtask1 /TR calc.exe /SC ONCE /ST 20:07 /F
SUCCESS: The scheduled task "testtask1" has successfully been created.

C:\WINDOWS\system32>schtasks /create /TN testtask1 /TR calc.exe /SC ONCE /ST 20:08 /F /Z
ERROR: The task XML is missing a required element or attribute.
(40,4):EndBoundary:
C:\WINDOWS\system32>schtasks /create /TN testtask1 /TR calc.exe /SC MINUTE /MO 1 /ST 20:09 /ET 20:11 /F /Z
SUCCESS: The scheduled task "testtask1" has successfully been created.

C:\WINDOWS\system32>schtasks /query /TN testtask1

Folder: \
TaskName                                 Next Run Time          Status
======================================== ====================== ===============
testtask1                                11-02-2016 20:11:00    Ready

C:\WINDOWS\system32>schtasks /query /TN testtask1
ERROR: The system cannot find the file specified.

C:\WINDOWS\system32>schtasks /create /TN testtask1 /TR calc.exe /SC MINUTE /MO 1 /ST 20:12 /ET 20:14 /F /Z
ERROR: The system cannot find the file specified.

C:\WINDOWS\system32>schtasks /create /TN testtask1 /TR calc.exe /SC MINUTE /MO 1 /ST 20:12 /ET 20:14 /Z
WARNING: The task name "testtask1" already exists. Do you want to replace it (Y/N)? y
ERROR: The system cannot find the file specified.

Estou usando o Windows 10 (Build 10586.104) e não testei isso em versões mais antigas do Windows, por isso não tenho certeza se esse problema é específico do meu sistema. Eu também não posso usar a interface GUI ( taskschd.msc ) para criar tarefas agendadas com nomes usados anteriormente.

Na sugestão do @ root , tentei executar Unregister-ScheduledTask -TaskName testtask1 -Confirm:$false no PowerShell, mas isso me causou esse erro:

Unregister-ScheduledTask : No MSFT_ScheduledTask objects found with property 'TaskName' equal to 'testtask1'.  Verify
the value of the property and retry.

Eu também executei fsutil resource setautoreset true c:\ e reiniciei o Windows como recomendado por aikitsupport.com mas isso também não ajudou.

PS Se você puder pensar em um título de pergunta melhor, fique à vontade para editá-lo.     
por Vinayak 11.02.2016 / 16:37

1 resposta

4

Exclua entradas inválidas do TaskCache. O TaskCache é normalmente mantido automaticamente, neste caso, algumas entradas não foram removidas automaticamente quando a tarefa foi excluída.

Pesquise no registro e exclua manualmente todas as chaves que contenham o nome da tarefa planejada inválido que se encontra em:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks

e

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree

Isso permitirá a reutilização do nome da tarefa.

Outros usuários com este cenário também podem ter que excluir entradas encontradas em C:\Windows\System32\Tasks contendo o nome da tarefa, embora, nesse caso, você tenha notado que elas já haviam sido excluídas.

    
por 12.02.2016 / 14:18