Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Explicit zárolás feloldása SEDO-kompatibilis objektumon
A WMI-osztály egy példányának
SMS_ObjectLock
létrehozásaKérje le a metódus metódusparaméter-objektumát
ReleaseLock
.Rendelje hozzá a feloldani kívánt objektum objektumútvonalát a
ObjectRelPath
tulajdonsághoz.Hozzon létre egy objektumpéldányt
InvokeMethodOptions
. A Context (Környezet) tulajdonságban adjon hozzá egy név/érték párot. A névnek "MachineName" értékűnek kell lennie, az értéknek pedig a zárolást feloldó számítógép nevének kell lennie. További információ: Zárolás beszerzése SEDO-Enabled objektumonHívja meg az InvokeMethod metódust a
SMS_ObjectLock
példányon.Az InvokeMethod egy példányt
SMS_ObjectLockRequest
ad vissza. Ellenőrizze a ésLockState
aRequestState
tulajdonságot, hogy további információt kapjon a kérés sikerességéről vagy sikertelenségéről.
Példa
Az alábbi példa egy objektumpéldány zárolását SMS_ConfigurationItem
oldja fel.
class Program
{
static void Main(string[] args)
{
ManagementScope scope = new ManagementScope(@"\siteservername\root\sms\site_ABC");
ReleaseLock(scope);
}
public static void ReleaseLock(ManagementScope scope)
{
ManagementPath path = new ManagementPath("SMS_ObjectLock");
ManagementClass objectLock = new ManagementClass(scope, path, null);
ManagementBaseObject inParams = objectLock.GetMethodParameters("ReleaseLock");
inParams["ObjectRelPath"] = "SMS_ConfigurationItem.CI_ID=30";
InvokeMethodOptions options = new InvokeMethodOptions();
options.Context.Add("MachineName", "RequestingComputer");
ManagementBaseObject result = objectLock.InvokeMethod("ReleaseLock", inParams, options);
}
}
A SMS_ObjectLockRequest objektum a következő tulajdonságokat tartalmazza:
Tulajdonság | Leírás |
---|---|
Kérelemazonosító | A kérés egyedi azonosítója. |
ObjectRelPath | Annak az objektumnak az elérési útja, amelyhez a zárolást kérik. |
RequestState | A kérés sikerességét vagy sikertelenségét jelzi. |
LockState | A kért zárolás aktuális állapotát jelzi. |
AssignedUser | A kért zárolás aktuálisan hozzárendelt felhasználóját jelzi. |
AssignedObjectLockContext | Azt jelzi, hogy ObjectLockContext, amelyhez a zárolás jelenleg hozzá van rendelve. |
AssignedMachine | A kért zárolás aktuálisan hozzárendelt számítógépét jelzi. |
AssignedSiteCode | A kért zárolás aktuális helyét jelzi. |
AssignedTimeUTC | Azt az időpontot jelzi, amikor a kért zárolást hozzárendelték. |
RequestState
Az alábbi táblázat a lehetséges kérelemállapot-értékeket jeleníti meg. A Kérés állapota: Granted, GrantedAfterTimeout és GrantedLockWasOrphaned, amely sikeres kérést jelez, és a felhasználó ezután módosításokat végezhet és menthet az objektumon. Minden más kérés hibát jelez.
RequestStateID | RequestStateName |
---|---|
0 | Ismeretlen |
2 | Kért |
3 | RequestedCanceled |
4 | ResponseReceived |
10 | Megadva |
11 | GrantedAfterTimeout |
12 | GrantedLockWasOrphaned |
20 | DeniedLockAlreadyAssigned |
21 | DeniedInvalidObjectVersion |
22 | DeniedLockNotFound |
23 | DeniedLockNotLocal |
24 | DeniedRequestTimedOut |
50 | Hiba |
52 | ErrorRequestNotFound |
53 | ErrorRequestTimedOut |
LockState
Az alábbi táblázat a lehetséges zárolási állapotértékeket jeleníti meg.
LockStateID | LockStateName |
---|---|
0 | Nincs hozzárendelve |
1 | Hozzárendelt |
2 | Kért |
3 | Függőben lévő hozzárendelés |
4 | Időtúllépés |
5 | Nem megoldás |
A kód fordítása
A C#-példához a következőre van szükség:
Névterek
Rendszer
System.Management
Összeszerelés
Robusztus programozás
A hibakezeléssel kapcsolatos további információkért lásd: A Configuration Manager hibák ismertetése.