Current Branch 1710 的 Configuration Manager Cmdlet 库更改
注意
System Center Configuration Current Branch 1706 是这些更改的基线。 有关更多详细信息,请参阅 Current Branch 1706 Configuration Manager Cmdlet 库更改。
重要更改
文档库更新
有关最新的 cmdlet 库文档,请参阅 ConfigurationManager 模块参考。
已删除 cmdlet
以下 cmdlet 不再受支持,已删除:
- Invoke-CMAmtProvisioningDiscovery
- New-CMAmtProvisioningAccount
- Set-CMPowerControl
已弃用的 cmdlet
-
Invoke-CMEndpointProtectionScan
和Save-CMEndpointProtectionDefinition
已被 取代Invoke-CMClientAction
。
禁用 PSDrive 自动创建
加载 ConfigurationManager.psd1 模块时,PowerShell 会自动尝试创建与使用 Configuration Manager 控制台访问的最后一个 SMS 提供程序的连接。 在某些情况下,此行为可能不可取。 添加了一个每用户注册表项,可以禁用此行为并需要手动创建驱动器。 若要配置此项,请使用注册表项: HKEY_CURRENT_USER\Software\Microsoft\ConfigMgr10\PowerShell
并将值 DisableCMDriveAutoCreate
设置为 1 的 DWORD, (禁用驱动器自动创建) 或 0 (默认行为) 。 删除 DisableCMDriveAutoCreate
还会启用默认行为。
注意
禁用驱动器自动创建后,Configuration Manager控制台可能会在启动 PowerShell 窗口时报告错误。
已知问题
这些是 Cmdlet 库的已知问题,未在此版本中解决。
Get-CMAadConditionalAccessPolicy和Set-CMAadConditionalAccessPolicy
这些 cmdlet 需要 64 位 PowerShell 环境。
解决方法
- 无
Import-CMSecurityRole
Cmdlet 可能会失败,并显示找到文件的 SecuredRoles.xsd
DirectoryNotFoundException 错误。
解决方法
Import-Module
确保针对ConfigurationManager.psd1
文件而不是逻辑路径或模块名称调用 。
Get-CMSiteUpdateInstallStatus
Cmdlet 可能会失败并出现 WqlQueryException 错误。
解决方法
- 使用 Invoke-CMWmiQuery 直接查询 SMS_CM_UpdatePackTopLevelMonitoring 类。
示例
# Note: The PackageGuid value can be determined by running Get-CMSiteUpdateInstallStatus -Verbose and viewing the query details.
Invoke-CMWmiQuery "SELECT * FROM SMS_UpdatePackTopLevelMonitoring WHERE PackageGuid='...' ORDER BY StageId ASC"
Set-CMSoftwareUpdatePoint
即使基础 SMS 提供程序对象已更改,对 Schedule 的更改也可能不会反映在Configuration Manager控制台中。
解决方法
退出并重新启动Configuration Manager控制台。
New cmdlet
这些是此版本新添加的 cmdlet,可添加新功能或增强现有 cmdlet 的功能。
设备关联 cmdlet
Get-CMResultantCollection
将获取与设备关联的集合。
Get-CMResultantDeployment
将获取面向设备的部署。
客户端清单类管理
添加了新的 cmdlet,以支持修改用于客户端清单的清单类。
- Get-CMInventoryClass
- New-CMInventoryReportClass
任务序列
添加了新的 cmdlet 以支持修改任务序列步骤。
- 任务序列命令 (Get、新建、删除和设置支持的谓词)
- CMTaskSequenceStepApplyOperatingSystem
- CMTaskSequenceStepApplyWindowsSetting
资源跟踪和恢复 (BETA)
添加了新的 cmdlet,以支持跟踪 PowerShell 运行时使用的 SMS 提供程序对象,并在不再需要这些资源时清理这些资源。
- Disconnect-CMTrackedObject
- Start-CMObjectTracking
- Stop-CMObjectTracking
运行 时 Start-CMObjectTracking
,PowerShell 运行时将跟踪 IResultObject
由 Cmdlet 库 cmdlet 创建的对象。 未使用 手动清理 .Dispose()
的 Cmdlet 可以通过对单个对象使用 Disconnect-CMTrackedObject
来回收。
示例
# Reclaim all tracked objects
$o | Disconnect-CMTrackedObject```), or ```Disconnect-CMTrackedObject -All
请注意,一旦回收对象,它便不能再重复使用或通过对象管道传递给另一个 cmdlet。
Stop-CMObjectTracking
可用于关闭对象跟踪。 请注意,以前分配的对象将保持活动状态。
未认领的资源可能会导致 SMS 提供程序引发配额冲突错误。 这些问题通常表现在处理非常大的 SMS 提供程序对象集或长时间运行的环境中
注意
这是一项实验性功能,在将来的版本中可能会发生更改或删除。 此功能是选择加入的,默认情况下未启用。
Cmdlet 更改
已针对此版本的现有 cmdlet 进行了以下更改。 更改可能是新功能、bug 修复或弃用,并且可能会中断。 如果使用本节中列出的某个 cmdlet 或功能区域,请仔细查看更改,以了解它们如何影响你的使用。
符合性设置和规则 cmdlet
已修复的 Bug
RuleDescription 值可能不适用于 Rule。 (支持创建或修改规则的 cmdlet)
无法 (Add/Set-CMComplianceSettingRegistryKeyValue、New-CMDetectionClauseRegistryKeyValue) 设置“默认”注册表项的值。
可能会 (New-CMComplianceRuleAssembly) 引发 NullReferenceException
缺少 DataType 支持 (Add-CMComplientSettingREgistryKeyValue)
Add-CMApplicationCatalogWebsitePoint
已修复的 Bug
改进了错误处理和报告。
Add/Set-CMDataWarehouseServicePoint
非中断性变更
DataWarehouseSqlPort 支持 1-65535 的端口值。
DaysOfWeek 参数现在支持 的值 Daily
。
Add/Set-CMExchangeServer
已修复的 Bug
EmailAddress 参数值可能不适用于 Exchange 服务器配置。
Add-CMMsiDeploymentType
已修复的 Bug
使用脚本检测时,需要 ContentLocation 参数。 添加了新的 UninstallContentLocation 和 UninstallOption 参数。
非中断性变更
改进了 ProductCode 参数的验证。
Add-CMScriptDeploymentType
非中断性变更
改进了 ProductCode 参数的验证。 添加了新的 UninstallContentLocation 和 UninstallOption 参数。
Get-CMDeploymentTypeDependencyGroup
非中断性变更
Cmdlet 现在支持中的 Get-CMDeploymentType
管道值。
Get-CMSiteStatusMessage
已修复的 Bug
使用 Severity 参数进行筛选时,并非所有消息都会返回。
Invoke-CMClientAction (以前是 Invoke-CMClientNotification)
非中断性变更
接受所有客户端通知类型的 ActionType 参数。
注意
RequestScriptExecution
目前不支持 。
弃用
NotificationType 已被 ActionType 取代
New-CM*Deployment
已修复的 Bug
Cmdlet 允许组合 CollectionId、 CollectionName 和 Collection 参数,这可能会导致未定义的行为。
New-CMBootableMedia
已修复的 Bug
无法将媒体创建为 SiteBased。
New-CMWirelessProfile
已修复的 Bug
Cmdlet 无法在 64 位 PowerShell 环境中运行。
如果为 ClientCertificate 参数指定值,Cmdlet 可能会返回错误。
Remove-CMCorpOwnedDevice
已修复的 Bug
使用管道对象时无法删除设备。
使用 WhatIf 或 Confirm 时,不会报告设备名称。
Remove-CMStateMigrationPoint
中断性变更
如果状态迁移点上存储了用户数据,则需要进行其他确认。 注意: 强制 将绕过此确认。
Save-CMSoftwareUpdate
非中断性变更
添加了 RetryCount 和 RetryDelaySec 参数,以在失败后重新尝试下载。
Set-CMAccessAccount
已修复的 Bug
PassThru 可能不会返回更新的对象。
Set-CMAntimalwarePolicy
已修复的 Bug
不能对 AddExcludedFilePath 参数使用通配符。
无法为给定策略配置FallbackOrder
非中断性变更
添加了用于管理威胁列表的新参数: AddThreat、 RemoveThreat 和 CleanThreat。 AddThreat 接受一个哈希表,其中键为名称,值类型 Microsoft.ConfigurationManagement.Cmdlets.EP.Commands.DefaultActionMediumAndLowType
为 。
弃用
ThreatName 和 OverrideAction 参数已被 AddThreat、 RemoveThreat 和 CleanThreat 取代。
Set-CMClientSettingComputerAgent
弃用
HealthAttestationUrl 参数,因为它不再被产品使用。
Set-CMClientSettingHardwareInventory
非中断性变更
AddInventoryReportClass、 CleanInventoryReportClass 和 RemoveInventoryReportClass 参数支持修改客户端收集的硬件清单。
Set-CMMsiDeploymentType
非中断性变更
改进了 ProductCode 参数的验证。
Set-CMScriptDeployment
已修复的 Bug
如果 cmdlet 无法阻止进一步修改,直到锁定过期,则 SMS 提供程序中的应用程序对象可能不会自动解锁。
Set-CMScriptDeploymentType
非中断性变更
改进了 ProductCode 参数的验证。
Set-CMSoftwareUpdatePointComponent
非中断性变更
添加了用于配置更新下载行为的新 ContentFileOption 参数。
Set-CMSiteMaintenanceTask
非中断性变更
改进了错误报告
Set-CMWirelessProfile
已修复的 Bug
Cmdlet 无法在 64 位 PowerShell 环境中运行。
使用对象管道时,可能会引发不匹配的PSTypeName 错误。
ProxyAddress 和 ProxyPort 不会使用与 Configuration Manager 控制台相同的规则进行验证。
在不使用 ProxyPort 的情况下指定 ProxyAddress 可能会导致创建无效的配置。
可以使用不支持此功能的配置更改 SecurityAuthentication。
即使后者未更改,EapType 也必须与 SecurityAuthentication 结合使用。
非中断性变更
添加了 RootCertificate、 ClientCertificate 和 RememberCredentials 参数。
改进了用于配置 MSCHAPv2 无线策略的功能。
Sync-CMSoftwareUpdate
非中断性变更
Cmdlet 不再需要指定任何参数。
注意
如果未定义任何参数, -ForceSync $true
则隐含 。