Powershell – Set-ClusteredScheduledTask – 错误“不正确的函数”。

我正在尝试使用Powershell在群集服务器上添加ClusteredScheduledTask(Win 2012 / R2)

Technet示例代码给出错误:

#canned exampled from http://technet.microsoft.com/en-us/library/jj649815.aspx $Action01 = New-ScheduledTaskAction -Execute Notepad $Action02 = New-ScheduledTaskAction -Execute Calc Set-ClusteredScheduledTask -TaskName "Task03" -Action $Action01,$Action02 

错误:

 Set-ClusteredScheduledTask : Incorrect function. At I:\Scripts\TaskSchedulerSetupJobs\TestWebSampleCode.ps1:4 char:1 + Set-ClusteredScheduledTask -TaskName "Task03" -Action $Action01,$Action02 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (PS_ClusteredScheduledTask:Root/Microsoft/...edScheduledTask) [Set-ClusteredScheduledTask], CimException + FullyQualifiedErrorId : HRESULT 0x80070001,Set-ClusteredScheduledTask 

补充:正如KrisFR指出的那样,我真的打算做一个Register,而不是Set,但是我仍然得到相同的基本错误:

 #canned exampled from http://technet.microsoft.com/en-us/library/jj649815.aspx cls $Trigger = New-ScheduledTaskTrigger -At 12:00 -Once $Action01 = New-ScheduledTaskAction -Execute Notepad Register-ClusteredScheduledTask -TaskName "Task03" -Trigger $Trigger -Action $Action01 

错误:

 Register-ClusteredScheduledTask : The parameter is incorrect. At I:\Scripts\TaskSchedulerSetupJobs\TestWebSampleCode.ps1:5 char:1 + Register-ClusteredScheduledTask -TaskName "Task03" -Trigger $Trigger -Action $Ac ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (PS_ClusteredScheduledTask:Root/Microsoft/...edScheduledTask) [Register-ClusteredScheduledTask], CimExce ption + FullyQualifiedErrorId : HRESULT 0x80070057,Register-ClusteredScheduledTask 

更新#2:从下面的答案和评论我们已经build立:

1)在PowerGUI下运行时,添加-TaskType anynode将“错误的参数”的错误更改为“错误的function”

2)当我用“以pipe理员身份运行”打开ISE 32位或64位时 – 我得到“不正确的function”

3)当我打开ISE 32位或64位而没有“以pipe理员身份运行” – 我得到

4)在今天早些时候的某个时候,我得到了“访问被拒绝”和/或“权限被拒绝”,我想这是当我打开PowerGUI时没有“以pipe理员身份运行”。

您是否尝试更新已注册的群集任务或注册新的群集任务?

来自MSDN博客 :

Set-ClusteredScheduledTask:更新已经注册的集群任务。

Register-ClusteredScheduledTask:注册一个集群任务。

我想你正在寻找Register-ClusteredScheduledTask 。

您需要添加-TaskType参数并以admin身份运行它:

 $trigger = New-ScheduledTaskTrigger -at 12:00 -Once $action = New-ScheduledTaskAction -Execute "notepad" Register-ClusteredScheduledTask -Action $action -TaskName "clusteredtasktest" -Trigger $trigger -TaskType anynode 

集群计划任务正在运行

我们与微软合作解决这个问题。 我们的问题是Admin已经将“Task Scheduler”定义为“BizTalk2013”​​群集节点(在get-ClusterResource cmdlet上看到的OwnerGroup)的一部分。 我们删除了这个ClusterResource。 在我们的例子中,“BizTalk2013”​​是我们的“OwnerGroup”,显然需要是“Task Scheduler”。

事实certificate,如果我们的pipe理员没有做任何事情,那么运行Register-ClusteredScheduledTask cmdlet就可以工作,并在名为“Task Scheduler”的节点下添加“Task Scheduler”。 我试图find他所设定的博客。