Tenho uma tarefa de inicialização que desejo executar automaticamente, independentemente de alguém estar conectado ou não.
Eu configurei como Run whether user is logged in or not
,, Do not store password1
e Run with highest privileges
, que eu suponho que funcionaria, usando o código abaixo:
schtasks /create /tn "My OnStartup Task" /TR "powershell blah.ps1" /sc ONSTART /f /NP /RL HIGHEST
Depois de ativar o histórico do agendador de tarefas, estou recebendo erros como:
Event ID: 104: Task Scheduler failed to log on "<Task Author>" . Failure occurred in "LsaLogonUser" . User Action: Ensure the credentials for the task are correctly specified. Additional Data: Error Value: 2147943711.
Event ID: 311: Task Scheduler failed to start Task Engine "" process due to an error occurring in "LUAIsElevatedToken" . Command="taskeng.exe" . Additional Data: Error Value: 2147943711.
Event ID: 101: Task Scheduler failed to start "\My OnStartup Task" task for user "<Machine>\<Task Author>". Additional Data: Error Value: 2147943711.
Eu configurei especificamente para não armazenar a senha, mas os erros dizem que está tentando usar a senha. Lembro-me de ler em algum lugar que não a caixa de seleção armazenar a senha também conta para "não execute interativamente", ou algo assim. Alguém poderia me indicar a direção certa aqui?
fonte
Minha solução (mencionada aqui para ajudar outras pessoas, além da resposta aceita):
A tarefa usada para executar em um usuário local . Executar se o usuário está logado ou não marcado; Não armazene a senha não marcada.
Tudo estava bem até renomearmos a máquina - tive que reatribuir o usuário sob o qual o trabalho é executado para ser o mesmo usuário - mas em outro computador.
fonte