次の方法で共有


IWbemServices::D eleteClassAsync メソッド (wbemcli.h)

IWbemServices::D eleteClassAsync メソッドは、指定したクラスを現在の名前空間から削除します。 このメソッドは、呼び出しが直ちに返される点を除き、 IWbemServices::D eleteClass と同じです。 操作の完了後、 IWbemObjectSink::SetStatus メソッドを使用して、指定したオブジェクト シンクに対して確認またはエラーが非同期的に報告されます。

構文

HRESULT DeleteClassAsync(
  [in] const BSTR      strClass,
  [in] long            lFlags,
  [in] IWbemContext    *pCtx,
  [in] IWbemObjectSink *pResponseHandler
);

パラメーター

[in] strClass

削除の対象となるクラスの名前。

[in] lFlags

次の値のうち 1 つ以上が有効です。

WBEM_FLAG_SEND_STATUS

このフラグは、クライアントによる IWbemObjectSink::SetStatus の実装を通じて中間状態レポートを受信する要求を Windows Management に登録します。 プロバイダーの実装では、このフラグが動作を変更するために、中間状態レポートをサポートする必要があります。

WBEM_FLAG_OWNER_UPDATE

プッシュ プロバイダーは、 DeleteClassAsync を呼び出すときにこのフラグを指定して、このクラスが変更されたことを示す必要があります。

[in] pCtx

通常 は NULL です。 それ以外の場合、これは、クラスを削除するプロバイダーが使用できる IWbemContext オブジェクトへのポインターです。 コンテキスト オブジェクトの値は、該当するプロバイダーのドキュメントで指定する必要があります。 このパラメーターの詳細については、「 WMI への呼び出しの作成」を参照してください。

[in] pResponseHandler

呼び出し元によって実装された IWbemObjectSink の実装へのポインター。 このハンドラーは、 IWbemObjectSink::SetStatus メソッドを使用して削除要求が使用可能になったときに、削除要求の状態を受け取ります。 エラー コードが返された場合、指定された IWbemObjectSink ポインターは使用されません。 WBEM_S_NO_ERRORが返された場合、操作の結果を示すためにユーザーの IWbemObjectSink 実装が呼び出されます。 Windows Management は、WBEM_S_NO_ERRORが返された場合にのみ、ポインターに 対して AddRef 呼び出します。 エラー コードが返された場合、参照カウントは入力時と同じです。 このパラメーターの詳細については、「 メソッドの呼び出し」を参照してください。

戻り値

このメソッドは、メソッド呼び出しの状態を示す HRESULT を返します。 次の一覧は、 HRESULT に含まれる値の一覧です。

他のすべてのリターン コードは、SetStatus メソッドを介して pReponseHandler パラメーターで指定されたオブジェクト シンクに提供されます。 クラスが存在しない場合や、ユーザーがクラスを削除するアクセス許可を持っていない場合など、エラー条件がハンドラーに報告されます。 これらは、このメソッドのリターン コードでは報告されません。

ネットワークの問題によって Windows Management へのリモート接続が失われると、COM 固有のエラー コードも返される可能性があります。

解説

動的インスタンス プロバイダーが クラスに関連付けられている場合、プロバイダーは登録解除され、そのクラスに対して呼び出されなくなります。 削除されたクラスから派生したクラスも削除され、関連付けられているプロバイダーは登録解除されます。 指定したクラスとそのサブクラスの未処理の静的インスタンスも、クラスが削除されるとすべて削除されます。

クラスが動的クラス プロバイダーによって提供される場合、削除の成功は、そのプロバイダーでクラスの削除がサポートされているかどうかによって異なります。

メモ 標準システム クラスは削除できません。
 
コールバックは、クライアントが必要とするのと同じ認証レベルで返されない可能性があるため、非同期通信の代わりに半同期を使用することをお勧めします。 非同期通信が必要な場合は、「 メソッドの呼び出し」を参照してください。

メソッドを半同期的に使用する方法の詳細については、「 IWbemServices::D eleteClass 」および 「メソッドの呼び出し」を参照してください。

要件

   
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー wbemcli.h (Wbemidl.h を含む)
Library Wbemuuid.lib
[DLL] Fastprox.dll;Esscli.dll;FrameDyn.dll。FrameDynOS.dll;Ntevt.dll;Stdprov.dll;Viewprov.dll;Wbemcomn.dll;Wbemcore.dll;Wbemess.dll;Wbemsvc.dll;Wmipicmp.dll;Wmidcprv.dll;Wmipjobj.dll;Wmiprvsd.dll

関連項目

IWbemServices

IWbemServices::D eleteClass

エラー コードの取得