Get-CMObjectLockDetails

获取对象的 SEDO 锁的详细信息。

语法

Get-CMObjectLockDetails
   [-InputObject] <IResultObject>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

说明

使用此 cmdlet 获取对象的 SEDO 锁详细信息。 Configuration Manager SEDO (分布式对象的序列化编辑) 是一种向全局复制对象分配锁的机制。 如果用户想要编辑和保存对象,则必须从站点获取锁。 站点在其计算机上和站点中为该对象的用户分配锁。 虽然用户具有锁,但其他人无法编辑对象。

有关详细信息,请参阅 Configuration Manager SEDO

注意

从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门

示例

示例 1:获取应用程序的对象锁详细信息

此示例显示应用程序的锁详细信息的输出。

PS XYZ:\> Get-CMApplication -Name "Central app" | Get-CMObjectLockDetails


SmsProviderObjectPath     : __PARAMETERS
AssignedMachine           : DESKTOP-VKJQV9N
AssignedObjectLockContext : 36b0ab13-ebe3-4977-8aab-19a701b1c1b6
AssignedSiteCode          : XYZ
AssignedTimeUTC           : 1/5/2021 08:08:39
AssignedUser              : CONTOSO\jqpublic
LockState                 : 1
ReturnValue               : 0

当对象上没有锁时,输出类似,但许多属性为空。 值不是 $null,而是空字符串 ""

示例 2:在编辑对象之前检查锁

此示例首先使用 Get-CMApplication cmdlet 获取应用对象。 然后,它将 Get-CMObjectLockDetails cmdlet 用于该应用,并将 AssignedUser 属性分配给变量 lockUser。 如果该值为空,则使用 Set-CMApplication cmdlet 更改应用的名称。 如果 lockUser 变量不为空,则会写入警告。

$app617 = Get-CMApplication -ApplicationName "LOB app v6.17"
$lockUser = ($app617 | Get-CMObjectLockDetails).AssignedUser

if ( $lockUser -eq "" ) {
  Set-CMApplication -InputObject $app617 -NewName "Central app v6.17"
} else {
  Write-Warning "There's a SEDO lock on app $($app617.LocalizedDisplayName)"
}

参数

-DisableWildcardHandling

此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceWildcardHandling

此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputObject

指定另一个 cmdlet 输出的 Configuration Manager 对象。 例如,若要获取应用程序对象,请使用 Get-CMApplication cmdlet。

有关已启用 SEDO 的对象的列表,请参阅 Configuration Manager SEDO

类型:IResultObject
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

输出

System.Object