UnhookWinEvent 関数 (winuser.h)

SetWinEventHook の以前の呼び出しによって作成されたイベント フック関数を削除します。

構文

BOOL UnhookWinEvent(
  [in] HWINEVENTHOOK hWinEventHook
);

パラメーター

[in] hWinEventHook

種類: HWINEVENTHOOK

SetWinEventHook の前回の呼び出しで返されたイベント フックを処理します。

戻り値

種類: BOOL

成功した場合は TRUE を返します。それ以外の場合は FALSE を返します

3 つの一般的なエラーにより、この関数は失敗します。

  • hWinEventHook パラメーターが NULL であるか、無効です。
  • hWinEventHook で指定されたイベント フックは既に削除されています。
  • UnhookWinEvent は、 SetWinEventHook の元の呼び出しとは異なるスレッドから呼び出されます。

注釈

この関数は 、hWinEventHook によって指定されたイベント フックを削除します。これにより、対応するコールバック関数がそれ以上のイベント通知を受信できなくなります。 クライアントのスレッドが終了すると、システムはこの関数を自動的に呼び出します。

イベント フックをインストールしたのと同じスレッドからこの関数を呼び出します。 SetWinEventHook に対応する呼び出しとは異なるスレッドから呼び出された場合、UnhookWinEvent は失敗します。

このイベント フックのインストール時にWINEVENT_INCONTEXTが指定された場合、システムは、読み込まれたすべてのプロセスから対応する DLL のアンロードを試みます。 アンロードはすぐには行われませんが、 UnhookWinEvent が返された後、フック関数は呼び出されません。 WINEVENT_INCONTEXTの詳細については、「 コンテキスト内フック関数」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll
再頒布可能パッケージ SP6 以降および Windows 95 を使用した Windows NT 4.0 の Active Accessibility 1.3 RDK