Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Mevcut bir sınıfın örneğini oluşturur veya güncelleştirir. Örnek WMI deposuna yazılır.
Uyarı
Bu API yalnızca iç kullanıma yöneliktir. Geliştirici kodundan kullanıma yönelik değildir.
Sözdizimi
HRESULT PutInstanceWmi (
[in] IWbemClassObject* pInst,
[in] long lFlags,
[in] IWbemContext* pCtx,
[out] IWbemCallResult** ppCallResult
);
Parametreler
pInst
[in] Yazılacak örneğe ilişkin bir işaretçi.
lFlags
[in] Bu işlevin davranışını etkileyen bayrakların birleşimi. Aşağıdaki değerler WbemCli.h üst bilgi dosyasında tanımlanır veya bunları kodunuzda sabit olarak tanımlayabilirsiniz:
| Sabit | Değer | Description |
|---|---|---|
WBEM_FLAG_USE_AMENDED_QUALIFIERS |
0x20000 | Ayarlanırsa WMI, herhangi bir niteleyiciyi Amended bu türde depolamaz. Ayarlanmazsa, bu nesnenin yerelleştirilmediği ve tüm niteleyicilerin bu örnekle birlikte depolandığı varsayılır. |
WBEM_FLAG_CREATE_OR_UPDATE |
0 | Yoksa örneği oluşturun veya zaten varsa üzerine yazın. |
WBEM_FLAG_UPDATE_ONLY |
1 | Örneği güncelleştirin. Çağrının başarılı olması için örneğin mevcut olması gerekir. |
WBEM_FLAG_CREATE_ONLY |
2 | Örneği oluşturun. Örnek zaten varsa çağrı başarısız olur. |
WBEM_FLAG_RETURN_IMMEDIATELY |
0x10 | bayrağı, yarı zaman uyumsuz bir çağrıya neden olur. |
pCtx
[in] Bu değer genellikle şeklindedir null. Aksi takdirde, istenen sınıfları sağlayan sağlayıcı tarafından kullanılabilecek bir IWbemContext örneğine yönelik bir işaretçidir.
ppCallResult
[out] ise null, bu parametre kullanılmaz. içeriyorsa lFlagsWBEM_FLAG_RETURN_IMMEDIATELY, işlevi ile WBEM_S_NO_ERRORhemen döndürür.
ppCallResult parametresi yeni bir IWbemCallResult nesnesine yönelik bir işaretçi alır.
Dönüş değeri
Bu işlev tarafından döndürülen aşağıdaki değerler WbemCli.h üst bilgi dosyasında tanımlanır veya bunları kodunuzda sabit olarak tanımlayabilirsiniz:
| Sabit | Değer | Description |
|---|---|---|
WBEM_E_ACCESS_DENIED |
0x80041003 | Kullanıcının belirtilen sınıfın bir örneğini güncelleştirme izni yok. |
WBEM_E_FAILED |
0x80041001 | Belirtilmeyen bir hata oluştu. |
WBEM_E_INVALID_CLASS |
0x80041010 | Bu örneği destekleyen sınıf geçerli değil. |
WBEM_E_ILLEGAL_NULL |
0x80041028 | , null veya niteleyicisi tarafından işaretlenmiş bir özellik gibi, olamayan nullbir IndexedNot_Null özellik için belirtildi. |
WBEM_E_INVALID_OBJECT |
0x8004100f | Belirtilen örnek geçerli değil. (Örneğin, bir sınıfla çağırmak PutInstanceWmi bu değeri döndürür.) |
WBEM_E_INVALID_PARAMETER |
0x80041008 | Parametre geçerli değil. |
WBEM_E_ALREADY_EXISTS |
0x80041019 |
WBEM_FLAG_CREATE_ONLY Bayrağı belirtildi, ancak örnek zaten var. |
WBEM_E_NOT_FOUND |
0x80041002 |
WBEM_FLAG_UPDATE_ONLY içinde lFlagsbelirtildi, ancak örnek yok. |
WBEM_E_OUT_OF_MEMORY |
0x80041006 | İşlemi tamamlamak için yeterli bellek yok. |
WBEM_E_SHUTTING_DOWN |
0x80041033 | WMI büyük olasılıkla durdurulmuş ve yeniden başlatılmıştı. ConnectServerWmi'yi yeniden arayın. |
WBEM_E_TRANSPORT_FAILURE |
0x80041015 | Geçerli işlem ile WMI arasındaki uzak yordam çağrısı (RPC) bağlantısı başarısız oldu. |
WBEM_S_NO_ERROR |
0 | İşlev çağrısı başarılı oldu. |
Açıklamalar
Bu işlev , IWbemServices::P utInstance yöntemine yapılan çağrıyı sarmalar.
işlevi yalnızca PutInstanceWmi mevcut sınıfların örneklerinin oluşturulmasını ve güncelleştirilmesini destekler. Parametrenin nasıl ayarlandıklarına pCtx bağlı olarak, örneğin özelliklerinin bazıları veya tümü güncelleştirilir.
tarafından işaret edilen pInst örnek bir alt sınıfa ait olduğunda, Windows Yönetimi alt sınıfın türetildiği sınıflardan sorumlu tüm sağlayıcıları çağırır. Özgün PutInstanceWmi isteğin başarılı olması için bu sağlayıcıların tümü başarılı olmalıdır. Hiyerarşide en üstteki sınıfı destekleyen sağlayıcı ilk olarak çağrılır. Çağrı sırası en üstteki sınıfın alt sınıfıyla devam eder ve Windows Yönetimi tarafından pInstişaret edilen örneğe sahip olan sınıfın sağlayıcısına ulaşana kadar yukarıdan aşağıya doğru devam eder.
Windows Yönetimi, bir örneğin alt sınıflarından herhangi biri için sağlayıcıları çağırmaz.
Bir uygulamanın sınıf hiyerarşisine ait bir örneği güncelleştirmesi gerektiğinde, pInst parametresi değiştirilecek özellikleri içeren örneğe işaret etmelidir. Başka bir ifadeyle ClassB'ye ait bir hedef örneği düşünün. Örnek ClassA'danClassB türetilir ve ClassAPropA özelliğini tanımlar. Bir uygulama, örneğin değerinde PropAClassB değişiklik yapmak istiyorsa ClassA örneği yerine bu örneğe ayarlanmalıdırpInst.
Soyut sınıfın bir örneğinde çağrıya PutInstanceWmi izin verilmez.
İşlev çağrısı başarısız olursa, GetErrorInfo işlevini çağırarak ek hata bilgileri alabilirsiniz.
Gereksinimler
Platform: Bkz. Sistem Gereksinimleri.
Üstbilgi: WMINet_Utils.idl
.NET Framework Sürümleri: 4.7.2'den itibaren kullanılabilir