次の方法で共有


IUIAutomation6::RemoveEventHandlerGroup メソッド (uiautomationclient.h)

指定したUI オートメーションイベント ハンドラー グループを非同期的に削除します。

構文

HRESULT RemoveEventHandlerGroup(
  [in] IUIAutomationElement           *element,
       IUIAutomationEventHandlerGroup *handlerGroup
);

パラメーター

[in] element

イベント ハンドラー グループに関連付けられているUI オートメーション要素へのポインター。

handlerGroup

UI オートメーション イベント リスナーのコレクション。

戻り値

このメソッドは、成功すると S_OK を返します。 成功しなかった場合は、HRESULT エラー コードを返します。

解説

イベント ハンドラーを実装する前に、「スレッドの問題について」で説明されているスレッドの問題 について理解しておく必要があります。

イベントがイベントのサブスクライブ解除要求と同時に受信された場合、ハンドラーのサブスクライブ解除後にイベントがイベント ハンドラーに配信される可能性があります。 ベスト プラクティスは、コンポーネント オブジェクト モデル (COM) 標準に従い、参照カウントが 0 に達するまでイベント ハンドラー オブジェクトを破棄しないようにすることです。 イベントのサブスクライブを解除した直後にイベント ハンドラーを破棄すると、イベントが遅延して配信された場合、アクセス違反が発生する可能性があります。

要件

要件
サポートされている最小のクライアント Windows 10 Version 1809 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server バージョン 1709 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー uiautomationclient.h (UIAutomation.h を含む)

こちらもご覧ください

IUIAutomation6::AddEventHandlerGroup,IUIAutomation6インターフェイス