Desde o Powershell 4.0 você pode usar o módulo ScheduledTask para criar tarefas agendadas sem o uso do objeto-com e leitura e escrita mais fáceis.
Exemplo:
$A = New-ScheduledTaskAction -Execute "Taskmgr.exe"
$T = New-ScheduledTaskTrigger -AtLogon
$P = New-ScheduledTaskPrincipal "Laptop\Administrator"
$S = New-ScheduledTaskSettingsSet
$D = New-ScheduledTask -Action $A -Principal $P -Trigger $T -Settings $S
Register-ScheduledTask T1 -InputObject $D
O primeiro comando usa o cmdlet New-ScheduledTaskAction para atribuir a variável $A ao arquivo executável tskmgr.exe .
O segundo comando usa o cmdlet New-ScheduledTaskTrigger para atribuir a variável $T ao valor AtLogon.
O terceiro comando atribui a variável $P ao principal da tarefa agendada, Contoso\Administrator .
O quarto comando usa o cmdlet New-ScheduledTaskSettingsSet para atribuir a variável $S a um objeto de configurações de tarefa.
O quinto comando cria uma nova tarefa e atribui a variável $D à definição da tarefa.
O sexto comando (hipoteticamente) é executado mais tarde. Ele registra a nova tarefa agendada e a define usando a variável $D .
Não se esqueça de executar o código como Administrator . Fonte.