Configuration Manager Current Branch 1610 的 Cmdlet 库更改
备注
Configuration Manager Cmdlet 库的 1604 版本是这些更改的基线。
重要更改
管理员控制台允许启动集成脚本环境 (ISE)
在管理员控制台中,添加了一个用于启动 ISE 的其他选项:“通过 Windows PowerShell ISE 进行连接”。
Cmdlet 更新检查
Cmdlet 库将不再检查更新的版本。 此检查不再必要,因为 Cmdlet 库现在随Configuration Manager版本同时提供。
Get-CM* cmdlet 可能支持“快速”模式,如果未使用,则可能会返回警告
某些 Get cmdlet 现在具有 Fast 参数。 此参数允许 cmdlet 返回对象,而无需自动刷新延迟属性。 检索延迟属性值可能会导致其他网络流量,并会减慢 cmdlet 执行速度。 如果未使用延迟属性,则应将 Fast 作为 cmdlet 参数提供。
若要提供对此更改的可见性,支持 Fast 的 cmdlet 将向控制台写入警告(如果未在存在可能有益的情况下使用)。 可以通过设置 $CMPSSuppressFastNotUsedCheck = $True
来抑制此警告。
如何提供反馈或报告问题
本文档中描述的许多修补程序和改进都是客户反馈的结果。 有关详细信息,请参阅 产品反馈。
已知问题
这些是此版本中未解决的 Cmdlet 库的已知问题。
无法使用逻辑名称导入 ConfigurationManager.psd1 模块
如果 ConfigurationManager.psd1 模块的路径已添加到 PSMODULEPATH 环境变量中,则无法使用 Import-Module ConfigurationManager 导入该模块。
解决方法
使用模块的完整路径
https://gallery.technet.microsoft.com/Make-Configuration-Manager-04474a87
备注
此解决方法由用户社区提供,并且不受 Microsoft 的测试或支持。
Add-CMEnrollmentProxyPoint
如果主站点有多个注册点,或者注册点位于单独的服务器上,则 Cmdlet 可能无法正确配置注册代理点。
解决方法
- 为此配置使用管理员控制台。
Get-CMAadConditionalAccessPolicy/Set-CMAadConditionalAccessPolicy
这些 cmdlet 需要 64 位 PowerShell 环境。
解决方法
- 无
New cmdlet
这些是此版本新添加的 cmdlet,可添加新功能或增强现有 cmdlet 的功能。
客户端设置
编写了新的 cmdlet 以改进有关修改客户端设置的体验。 这些 cmdlet 替换了 Set-CMClientSetting cmdlet,该 cmdlet 现已弃用。 这些 cmdlet 支持使用 Get-CMClientSetting cmdlet 中的对象管道来修改用户定义的客户端设置。
- Set-CMClientSettingBackgroundIntelligentTransfer
- Set-CMClientSettingClientCache
- Set-CMClientSettingClientPolicy
- Set-CMClientSettingCloudService
- Set-CMClientSettingComplianceSetting
- Set-CMClientSettingComputerAgent
- Set-CMClientSettingComputerRestart
- Set-CMClientSettingEndpointProtection
- Set-CMClientSettingEnrollment
- Set-CMClientSettingGeneral
- Set-CMClientSettingHardwareInventory
- Set-CMClientSettingMeteredInternetConnection
- Set-CMClientSettingPowerManagement
- Set-CMClientSettingRemoteTool
- Set-CMClientSettingSoftwareDeployment
- Set-CMClientSettingSoftwareInventory
- Set-CMClientSettingSoftwareMetering
- Set-CMClientSettingSoftwareUpdate
- Set-CMClientSettingStateMessaging
- Set-CMClientSettingUserAndDeviceAffinity
条件访问策略
编写了新的 cmdlet 以支持 Azure Active Directory (Azure AD) 条件访问策略设置。
- Get-CMAadConditionalAccessPolicy
- Set-CMAadConditionalAccessPolicy
示例
PR1:\> Get-CMAadConditionalAccessPolicy -AccountId 752c1e46-ddd2-4ffc-8f15-23623328c823 -ServicePrincipalType ExchangeOnline -UserCredential (Get-Credential)
PR1:\> Set-CMAadConditionalAccessPolicy -AccountId 752c1e46-ddd2-4ffc-8f15-23623328c823 -ServicePrincipalType ExchangeOnline -Enabled $true -TargetedDevicePlatforms Windows,WindowsPhone -WindowsDeviceState Compliant -IncludedSecurityGroup All_Users -UserCredential (Get-Credential)
Copy-CMCollection
此 cmdlet 可用于将现有集合克隆到新集合。
终结点保护
用于高级威胁防护策略管理的新 cmdlet:
- Get-CMAdvancedThreatProtectionPolicy
- New-CMAdvancedThreatProtectionPolicy
- Remove-CMAdvancedThreatProtectionPolicy
- Set-CMAdvancedThreatProtectionPolicy
Get/Set-CMSiteSummaryTask
这些 cmdlet 可用于获取和设置站点摘要任务。
Invoke-CMPromotePreProductionClient
此 cmdlet 可用于将预生产客户端提升为生产状态。
示例
PR1:\> Invoke-CMPromotePreProductionClient -Force
迁移
用于迁移作业的新 cmdlet:
- Get-CMMigrationJob
- Set-CMMigrationJob
Rename-CMCategory
此 cmdlet 可用于重命名类别。
示例
PR1:\> Get-CMCategory -Name MyCategoryName | Rename-CMCategory -NewName MyCategoryNewName -CategoryType AppCategories
Cmdlet 更改
已对此版本的现有 cmdlet 进行了以下更改。 更改可能是新功能、bug 修复或弃用,并且可能会中断。 如果使用本部分中列出的 cmdlet 或功能区域之一,请仔细查看更改,了解这些更改对你的使用有何影响。
其他更改
已修复的 Bug
需要 Url 参数的部署类型 cmdlet 可能无法验证参数值是否正确 (例如 Add-CMGooglePlayDeploymentType、 Set-CMWindowsPhoneStoreDeploymentType) 。
支持移动应用程序管理 (MAM) 的部署类型 cmdlet 可能不会将这些详细信息添加到应用程序模型,导致管理员控制台中缺少“应用程序配置策略”选项卡。
Add-CM<技术>DeploymentType cmdlet 不会使用与管理员控制台相同的命名约定来创建部署类型。
需要文件而不是文件路径的部署类型 cmdlet (例如,如果为 ContentLocation 参数指定了意外参数,Add-CMMsiDeploymentType) 现在将报告更清晰的失败原因。
非中断性更改
表示__GENERIC WMI 对象的提供程序数据现在会向Windows PowerShell控制台显示更多数据。
从管理员控制台“通过 Windows PowerShell ISE 连接”
已修复的 Bug
生成的脚本没有运行,因为 ConfigurationManager 模块的路径无效。 如果已生成无效脚本,请删除现有的 %TEMP%\ISEConnect_sitecode - sitename.ps1文件,然后从管理员控制台重新启动 ISE。
安装管理员控制台语言包时,生成的脚本可能不可读。 如果已生成无效脚本,请删除现有的 %TEMP%\ISEConnect_sitecode - sitename.ps1文件,然后从管理员控制台重新启动 ISE。
从管理员控制台启动 ISE 时,可能会引发无效路径错误。
Add-CMDeploymentType
已修复的 Bug
Cmdlet 可能会返回“意外网站版本”警告。
Add-CMDeviceCollectionQueryMembershipRule
已修复的 Bug
Cmdlet 不验证 QueryExpression 参数指定的查询的有效性。 无法创建具有重复名称的查询规则 (与管理员控制台行为) 不一致。
Add-CMDriverToDriverPackage
已修复的 Bug
管道对象可以由 cmdlet 释放。
Add-CMEndpointProtectionPoint
已修复的 Bug
首次将终结点保护点添加到站点可能会导致默认客户端设置配置不正确。
Add-CMIntuneSubscription
已修复的 Bug
ContactEmail 参数不执行正确性的验证。
Add-CMMsiDeploymentType
已修复的 Bug
将忽略 EnableBranchCache 参数值。
非中断性更改
添加了 InstallationBehaviorType 参数。
Add-CMScriptDeploymentType
已修复的 Bug
将忽略 EnableBranchCache 参数值。
非中断性更改
添加了 InstallationBehaviorType 参数。
Add-CMUserCollectionQueryMembershipRule
已修复的 Bug
Cmdlet 不验证 QueryExpression 参数指定的查询的有效性。
无法创建具有重复名称的查询规则 (与管理员控制台行为) 不一致。
Block-CMDevice
非中断性更改
Cmdlet 现在接受 Get-CMDevice 中的管道对象。
Export-CMUserCollection
重大更改
Cmdlet 现在要求 ExportFilePath 参数以 .mof 文件扩展名结尾。
Get-CMCategory
非中断性更改
改进了 CategoryType 参数的验证。
Get-CMClientSetting
已修复的 Bug
可以忽略 SettingType 参数。
Get-CMDeploymentTypeDependency
已修复的 Bug
cmdlet 可能会返回意外的依赖项。
Get-CMDeviceAction
已修复的 Bug
无法查看 PinReset 操作的新密码。
Get-CMResource
已修复的 Bug
缺少快速参数。
Get-CMSiteRole
重大更改
连接到主站点且未指定 SiteCode 参数时,将仅返回特定于连接站点的角色。 进行此更改是为了与管理员控制台保持奇偶校验和一致性。 例如,如果有 CAS 并在主站点上运行 cmdlet,则仅使用当前站点代码的站点角色。 从 CAS 运行时,将返回所有站点的站点角色。
若要还原以前的行为, AllSites 参数可用于从任何连接的站点查询层次结构中的所有站点。
Get-CMSoftwareUpdate
已修复的 Bug
Cmdlet 可以释放 UpdateGroup 参数值。
Import-CMAntimalwarePolicy
已修复的 Bug
从早期版本的Configuration Manager导出的策略可能无法正确导入。
Import-CMAntimalwarePolicy
已修复的 Bug
策略可能无法导入,或者可能创建了验证错误。
使用 Cmdlet 可以导入已导入的文件。
Import-CMComputerInformation
重大更改
CollectionName 参数现在是必需的。
非中断性更改
添加了对通过其完全限定的域名导入计算机的支持。
Import-CMDriver
重大更改
如果发生部分驱动程序导入,cmdlet 将不再失败。 相反,它会警告某些驱动程序未成功导入。 如果无法导入任何驱动程序,则该 cmdlet 仍会失败。
Import-CMDriverPackage
非中断性更改
新的 ImportActionType 参数,用于控制包已存在时的行为。
Import-CMPackage
非中断性更改
新的 ImportActionType 参数,用于控制包已存在时的行为。
Import-CMSecurityRole
已修复的 Bug
Cmdlet 允许使用无效 的 NewRoleName 参数值。
Import-CMTaskSequence
非中断性更改
新的 ImportActionType 参数,用于控制包已存在时的行为。
Invoke-CMDeviceAction
已修复的 Bug
如果某些发现信息不适用于目标设备,则 Cmdlet 可能会失败并出现异常。
Invoke-CMDeviceRetire
已修复的 Bug
当用户无权调用停用操作时,Cmdlet 以无提示方式失败。
尝试停用不受支持的设备时,Cmdlet 不会失败,并出现明确的错误消息。
尝试停用擦除的设备时,Cmdlet 不会失败,并出现明确的错误消息。
非中断性更改
取消挂起设备停用的新 Cancel 参数。
Invoke-CMDeviceWipe
已修复的 Bug
当用户无权调用擦除操作时,Cmdlet 会以无提示方式失败。
尝试擦除不受支持的设备时,Cmdlet 不会失败,并出现明确的错误消息。
可能无法擦除Intune管理的设备。
非中断性更改
取消挂起的设备擦除的新 Cancel 参数。
Invoke-CMSoftwareUpdateAutoDeploymentRule
已修复的 Bug
管道对象可以由 cmdlet 释放。
Move-CMObject
已修复的 Bug
Cmdlet 找不到要移动的对象。
New-CMBootableMedia
已修复的 Bug
Cmdlet 未正确验证 CertificateExpireTime 和 CertificateStartTime 参数值。
New-CMCaptureMedia
重大更改
删除了不需要的 PrestartCommand 和 PrestartPackage 参数。
New-CMCategory
已修复的 Bug
Cmdlet 允许创建不受支持的 GlobalCondition 类别类型。
非中断性更改
改进了 CategoryType 参数的验证。
New-CMClientSetting
重大更改
SettingType 参数现在是必需的。
New-CMComputerAssociation
非中断性更改
性能改进。
New-CMDeviceVariable
已修复的 Bug
无法从 CAS 为主站点成员创建设备变量。
可由 cmdlet 释放管道集合对象。
New-CMGlobalCondition
已修复的 Bug
未验证 InstanceName 参数值长度。
非中断性更改
添加了创建 base64 和 xml 设置数据类型的功能。
New-CMPowerManagementCustomPlan
已修复的 Bug
在结果计划中未配置 DisplayOffMinAC 和 DisplayOffMinDC 参数。
New-CMPrestageMedia
非中断性更改
添加了 MediaPassword、 TaskSequence 和 IncludeApplicationDependency 参数。
New-CMQuery
已修复的 Bug
Cmdlet 不会验证查询名称是否已存在。
New-CMTaskSequence
已修复的 Bug
使用 UpgradeOperatingSystem 参数时,不会配置回滚。
使用 UpgradeOperatingSystem 参数时,汇报和应用程序步骤不会放置在预期位置。
New-CMWindowsEnrollmentProfile
已修复的 Bug
注册配置文件可能不包含有效的 Intranet 配置。
Remove-CMAdministrativeUser
重大更改
删除了非功能 RoleName 参数。
Remove-CMContentDistribution
已修复的 Bug
管道对象可以由 cmdlet 释放。
Remove-CMDeviceVariable
已修复的 Bug
如果尝试删除不存在的变量,Cmdlet 将以无提示方式失败。
无法从 CAS 中删除主站点成员的设备变量。
Cmdlet 可能会拒绝有效的管道集合成员对象。
Remove-CMIntuneSubscription
已修复的 Bug
如果Microsoft Intune订阅不存在,则 Cmdlet 可能会以无提示方式失败或出现不明确的错误消息。
Remove-CMMaintenanceWindow
已修复的 Bug
Cmdlet 可能会忽略 Name 参数并删除其他维护时段。
非中断性更改
Cmdlet 支持 Name 参数的 DisableWildcardHandling 参数提示。
Remove-CMMulticastServicePoint
已修复的 Bug
指定值为 false 的参数 RemoveWDS 仍可能导致删除 WDS 功能。
Set-CMAppVVirtualEnvironment
已修复的 Bug
AddApplicationGroup 参数不验证组是否已添加。
Set-CMBaselineDeployment
已修复的 Bug
如果未为部署启用强制措施,Cmdlet 可能会以无提示方式忽略 OverrideServiceWindow 。
Set-CMBoundaryGroup
已修复的 Bug
DefaultSiteCode 参数不允许空值来清除设置。
Set-CMClientSetting
弃用
Cmdlet 已弃用并替换为特定于功能的 cmdlet。 有关更多详细信息,请参阅 新 Cmdlet 。
Set-CMCollectionMembershipEvaluationComponent
弃用
SiteSystemServerName 参数已弃用。
Set-CMCollectionPowerManagement
已修复的 Bug
无法将 Power Management 策略从 NeverApply 更改为“应用”。
Set-CMConditionalAccessPolicy
已修复的 Bug
使用 名称 或 ID 参数指定策略时,Cmdlet 可能无法修改排除的集合。
Set-CMDeploymentType
已修复的 Bug
Cmdlet 可能会返回“意外网站版本”警告。
Set-CMDeviceVariable
已修复的 Bug
如果尝试设置不存在的变量,Cmdlet 将以无提示方式失败。
无法从 CAS 为主站点成员配置设备变量。
Cmdlet 可能会拒绝有效的管道集合成员对象。
非中断性更改
新的 PassThru 参数,用于返回生成的设备变量。
Set-CMDistributionPoint
已修复的 Bug
Cmdlet 可能会返回有关多播服务点配置的意外警告。
Set-CMFileReplicationRoute
已修复的 Bug
不能在不指定复制模式的情况下设置 FileReplicationAccountName 。
Set-CMGlobalCondition
已修复的 Bug
未验证 InstanceName 参数值长度。
Set-CMIntuneSubscription
已修复的 Bug
ContactEmail 参数不执行正确性的验证。
Set-CMIntuneSubscriptionAppleMdmProperty
已修复的 Bug
如果未满足某些必需的参数依赖项,Cmdlet 可能不会发出警告。
Set-CMIntuneSubscriptionPassportForWorkProperty
已修复的 Bug
可以忽略 EnableBiometrics 参数值。
Set-CMIntuneSubscriptionWindowsPhoneProperty
已修复的 Bug
使用某些无效的参数组合时,Cmdlet 可能不会失败。
Set-CMMigrationJob
已修复的 Bug
在不使用 MigrationJobSchedule 参数的情况下指定 UtcTime 参数可能会导致迁移作业配置无效。
Set-CMMigrationSource
已修复的 Bug
如果尝试创建具有已存在的名称的迁移源,Cmdlet 将以无提示方式失败。
非中断性更改
如果未使用完全限定的域名,Cmdlet 将尝试扩展 SourceSiteServerName 参数值。
Set-CMMsiDeploymentType
非中断性更改
添加了 InstallationBehaviorType 参数。
Set-CMScriptDeploymentType
非中断性更改
添加了 InstallationBehaviorType 参数。
Set-CMSite
已修复的 Bug
如果使用 SiteCode 参数,Cmdlet 可能会失败。
非中断性更改
删除了 SetSecurityScopeByName、SetSecurityScopeBySiteCode 和 SetSecurityScopeByValue) (未使用的额外参数集。
Set-CMSiteMaintenanceTask
重大更改
SiteCode 参数已删除。
弃用
SummaryTask 参数已弃用。 应改用 TaskName。
非中断性更改
接受来自 Get-CMSiteMaintenanceTask 的管道输入。
几个可用性改进。
添加了 TaskName 参数,用于按其名称设置任务。
Set-CMSoftwareUpdateDeployment
非中断性更改
改进了使用 Confirm 或 WhatIf 时的输出。
Set-CMSoftwareUpdatePointComponent
已修复的 Bug
无法将“本地发布服务器”指定为 AddCompany 参数的 值。
Set-CMSoftwareUpdateSummarizationSchedule
非中断性更改
改进了使用 Confirm 或 WhatIf 时的输出。
Start-CMBaselineDeployment
已修复的 Bug
如果未为部署启用强制措施,Cmdlet 可能会以无提示方式忽略 OverrideServiceWindow。
Start-CMContentDistribution
已修复的 Bug
管道对象可以由 cmdlet 释放。
Start-CMTaskSequenceDeployment
已修复的 Bug
如果未指定 DeploymentOption 参数,则可能无法正确创建部署。
Cmdlet 可能会返回一条警告,指出未指定 PercentSuccess 或 PercentFailure 参数时会忽略这些参数。
非中断性更改
如果未指定 DeploymentOption ,则会隐含 DownloadContentLocallyWhenNeededByRunningTaskSequence 的值。
Unblock-CMDevice
非中断性更改
Cmdlet 现在接受 Get-CMDevice 中的管道对象。
Unlock-CMObject
非中断性更改
如果尝试解锁由其他 SMS 提供程序会话锁定的对象,Cmdlet 现在将失败。 在以前的版本中,这会以无提示方式失败。
添加 了 Force 参数,尝试解锁可能被其他 SMS 提供程序会话锁定的对象。 这可用于从管理员控制台锁定对象而意外退出而不释放对象锁的方案中恢复。