Eu tenho um script do PowerShell que funciona quando inserido diretamente no PowerShell. O programa PowerShell é executado com o atalho:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\bin\exshell.psc1" -noexit -command ". 'C:\Program Files\Microsoft\Exchange Server\bin\Exchange.ps1'"
Eu tentei cerca de 10 maneiras diferentes no Agendador de Tarefas do Windows para primeiro abrir o atalho acima e depois executar o arquivo de script salvo, mas não funcionará. Pendura em 'Running'.
O script está localizado aqui:
Z:\Exchange PowerShell\MailboxesApproachingOverQuota.ps1
Observe que o conteúdo do script pode ser copiado e colado no atalho do PowerShell acima e ele funciona perfeitamente e envia a saída de e-mails como deveria.
Observe que a instância do PowerShell que eu uso é do atalho mostrado acima, o qual já possui argumentos. Por isso, estou perplexo com o que colocar no Agendador de Tarefas.
Alguma ajuda, por favor?
Obrigado :)
EDITAR Quando eu uso o seguinte diretamente no CMD:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\bin\exshell.psc1" -noexit -command ". 'C:\Program Files\Microsoft\Exchange Server\bin\Exchange.ps1'; &'Z:\Exchange Powershell\MailboxesApproachingOverQuota.ps1'"
Eu recebo: link
Quando uso o seguinte:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\bin\exshell.psc1" -noexit -command ". 'C:\Program Files\Microsoft\Exchange Server\bin\Exchange.ps1'; &'Z:\Exchange Powershell\MailboxesApproachingOverQuota.ps1'"
Eu recebo: link
Executando isso:
powershell -PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\bin\exshell.psc1" -noexit -exec bypass -command ". 'C:\Program Files\Microsoft\Exchange Server\bin\Exchange.ps1'"
Abre o shell de gerenciamento do Exchange bem: link