SEDO-Enabled Nesnede Kilit Bırakma
SEDO Etkinleştirilmiş Nesnede Açık Kilit Serbest Bırakmak için
WMI sınıfının bir örneğini
SMS_ObjectLock
oluşturmayöntemi için
ReleaseLock
yöntem parametreleri nesnesini alın.Kilidini açmak istediğiniz nesnenin nesne yolunu özelliğine atayın
ObjectRelPath
.Bir
InvokeMethodOptions
nesne örneği oluşturun. Context özelliğinde bir ad/değer çifti ekleyin. Adın "MachineName" olması ve değerin kilidi serbest bırakarak bilgisayarın adı olması gerekir. Daha fazla bilgi için bkz. SEDO-Enabled Nesnede Kilit AlmaÖrnekte InvokeMethod'ı çağırın
SMS_ObjectLock
.InvokeMethod bir
SMS_ObjectLockRequest
örnek döndürür. İsteğinRequestState
başarısı veya başarısızlığı hakkında daha fazla bilgi edinmek için veLockState
özelliklerini denetleyin.
Örnek
Aşağıdaki örnek bir nesne örneğinde kilit SMS_ConfigurationItem
bırakır.
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);
}
}
SMS_ObjectLockRequest nesnesi aşağıdaki özellikleri içerir:
Özellik | Açıklama |
---|---|
Requestıd | İsteğin benzersiz tanımlayıcısı. |
ObjectRelPath | Kilidin istendiği nesnenin yolu. |
RequestState | İsteğin başarısını veya başarısızlığını gösterir. |
LockState | İstenen kilidin geçerli durumunu gösterir. |
AssignedUser | İstenen kilidin şu anda atanmış olan kullanıcısını gösterir. |
AssignedObjectLockContext | Kilidin şu anda atandığı ObjectLockContext öğesini gösterir. |
AssignedMachine | İstenen kilidin şu anda atanmış olan bilgisayarını gösterir. |
AssignedSiteCode | İstenen kilidin geçerli sitesini gösterir. |
AssignedTimeUTC | İstenen kilidin atandığı saati gösterir. |
RequestState
Aşağıdaki tabloda olası istek durumu değerleri görüntülenir. İstek durumları Granted, GrantedAfterTimeout ve GrantedLockWasOrphaned başarılı bir isteği gösterir ve kullanıcı nesnede değişiklik yapabilir ve kaydedebilir. Diğer tüm istekler hataya işaret eder.
RequestStateID | RequestStateName |
---|---|
0 | Unknown |
2 | İstendi |
3 | RequestedCanceled |
4 | ResponseReceived |
10 | Verilen |
11 | GrantedAfterTimeout |
12 | GrantedLockWasOrphaned |
20 | DeniedLockAlreadyAssigned |
21 | DeniedInvalidObjectVersion |
22 | DeniedLockNotFound |
23 | DeniedLockNotLocal |
24 | DeniedRequestTimedOut |
50 | Error |
52 | ErrorRequestNotFound |
53 | ErrorRequestTimedOut |
LockState
Aşağıdaki tabloda olası kilit durumu değerleri görüntülenir.
LockStateID | LockStateName |
---|---|
0 | Atanma -mış |
1 | Atanan |
2 | İstendi |
3 | PendingAssignment |
4 | Zaman Aşımı |
5 | NotFound |
Kodu Derleme
C# örneği şunları gerektirir:
Ad alanları
Sistem
System.Management
Derleme
Sağlam Programlama
Hata işleme hakkında daha fazla bilgi için bkz. Configuration Manager Hataları Hakkında.