如何解决Invoke-WMIMethod-找不到引发错误-SCCM CCM操作
Invoke-WMIMethod -ComputerName $computer -Namespace root\ccm -Class SMS_CLIENT -Name TriggerSchedule "{00000000-0000-0000-0000-000000000026}" | Out-Null
Invoke-WMIMethod -ComputerName $computer -Namespace root\ccm -Class SMS_CLIENT -Name TriggerSchedule "{00000000-0000-0000-0000-000000000027}" | Out-Null
Invoke-WMIMethod -ComputerName $computer -Namespace root\ccm -Class SMS_CLIENT -Name TriggerSchedule "{00000000-0000-0000-0000-0000000000113}" | Out-Null
Invoke-WMIMethod -ComputerName $computer -Namespace root\ccm -Class SMS_CLIENT -Name TriggerSchedule "{00000000-0000-0000-0000-0000000000108}" | Out-Null)
全部抛出未找到的错误。
有什么想法吗?这些被取代了吗?
解决方法
{00000000-0000-0000-0000-000000000026}
和{00000000-0000-0000-0000-000000000027}
是用户专用的,似乎已更改为依赖sid的其他类,因此您可以为任何用户调用它。称呼他们的最常见例子是
$sched=([wmi]"root\ccm\Policy\$sid\ActualConfig:CCM_Scheduler_ScheduledMessage.ScheduledMessageID='{00000000-0000-0000-0000-000000000026}'")
$sched.Triggers=@('SimpleInterval;Minutes=1;MaxRandomDelayMinutes=0')
$sched.Put()
其中$ sid是用户SID,其中每个-
被一个_
替换
您可以像这样登录用户来获取它们:
$sids = (get-wmiobject -query "SELECT UserSID FROM CCM_UserLogonEvents WHERE LogoffTime = NULL" -namespace "ROOT\ccm").UserSID.replace('-','_')
但是{00000000-0000-0000-0000-000000000113}
和{00000000-0000-0000-0000-000000000108}
仍然可以使用您使用的方法。抛出“未找到”错误的唯一原因是,如果它们不是以提升的管理员权限执行的,那么所有其他TriggerSchedule消息也是如此,因此我不知道可能是什么问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。