如何在用户会话中运行Powershell ScheduledJob(-AtLogOn)?

时间:2015-05-21 21:52:15

标签: powershell scheduled-tasks

使用powershell我正在创建一个ScheduledJob以在用户登录时运行(使用New-JobTrigger -AtLogOn)。

但是我注意到这个作业在会话0中运行而不是在登录用户的会话中运行。

此外,JobTrigger和ScheduledJobOption设置都不允许我在用户的会话中运行。

有关如何让这个ScheduledJob在用户会话中运行的任何想法?

$trigger = New-JobTrigger -AtLogOn
Register-ScheduledJob -Name 'my job' -Trigger $trigger -ScriptBlock { xxx }

2 个答案:

答案 0 :(得分:1)

您需要使用-User参数:

  

-AtLogOn

     

指定的用户登录计算机时启动计划的作业。要指定用户,请使用User参数。

https://technet.microsoft.com/en-us/library/hh849759.aspx

答案 1 :(得分:0)

事实证明,唯一的方法是使用ScheduledTask(而不是ScheduledJob)。

编辑:将此标记为“答案”,因为它似乎解决了我的问题。但是,如果有人有更好的解决方案,请随时在此处发布。