IRawElementProviderAdviseEvents::AdviseEventRemoved メソッド (uiautomationcore.h)

UI オートメーション クライアントが、プロパティ変更イベントを含む特定のイベントのリッスンを停止したときに、Microsoft UI オートメーション プロバイダーに通知します。

構文

HRESULT AdviseEventRemoved(
  [in] EVENTID   eventId,
  [in] SAFEARRAY *propertyIDs
);

パラメーター

[in] eventId

種類: EVENTID

削除されるイベントの識別子。 イベント ID の一覧については、「 イベント識別子」を参照してください。

[in] propertyIDs

種類: SAFEARRAY*

削除されるプロパティの識別子へのポインター。削除されるイベント リスナーがプロパティ イベントをリッスンしていない場合は NULL

戻り値

種類: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

解説

このメソッドを使用すると、リッスン対象のイベントのみを発生させることで、プロバイダーのオーバーヘッドを削減できます。

UI オートメーション プロバイダーでは、IRawElementProviderAdviseEvents::AdviseEventRemovedIUnknown インターフェイスの Release メソッドのように処理することが重要です。 特定のイベントまたはプロパティに対して AdviseEventAddedAdviseEventRemoved よりも多くの回数呼び出されている限り、一部のクライアントがまだリッスンしているため、プロバイダーは引き続き対応するイベントを発生させる必要があります。 または、UI オートメーション プロバイダーは 、UiaClientsAreListening 関数を 使用して、少なくとも 1 つのクライアントがリッスンしているかどうかを判断し、存在する場合は、すべての適切なイベントを発生させることができます。

要件

   
サポートされている最小のクライアント Windows XP [デスクトップ アプリ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー uiautomationcore.h (UIAutomation.h を含む)

関連項目

安全な配列を使用するためのベスト プラクティス

概念

IRawElementProviderAdviseEvents

参照