WinBioReleaseFocus 関数 (winbio.h)

ウィンドウフォーカスを解放します。

構文

HRESULT WinBioReleaseFocus();

戻り値

関数が成功した場合は、S_OK を返します。 関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通 HRESULT 値」を参照してください。

リターン コード 説明
E_ACCESSDENIED
呼び出し元のプロセスは、ローカル システム アカウントで実行されている必要があります。

注釈

Windows 生体認証フレームワークは、ウィンドウ フォーカスを使用して、システム プールに接続されている複数のセッション間で仲裁を行います。

フォーカスを取得する方法は、作成するアプリケーションの種類によって異なります。 たとえば、GUI アプリケーションを作成する場合は、 WM_ACTIVATEWM_SETFOCUS、またはその他の適切なメッセージをキャプチャするメッセージ ハンドラーを実装できます。 CUI アプリケーションを作成する場合は、 GetConsoleWindow を 呼び出してコンソール ウィンドウへのハンドルを取得し、そのハンドルを SetForegroundWindow 関数に渡して、コンソール ウィンドウをフォアグラウンドに強制的に割り当ててフォーカスを割り当てます。 アプリケーションがデタッチされたプロセスで実行されている場合、または Windows サービスであり、ウィンドウがない場合は、 WinBioAcquireFocusWinBioReleaseFocus を 使用して手動でフォーカスを制御します。

次の一覧は、 WinBioAcquireFocusWinBioReleaseFocus を呼び出す前に考慮すべき主な点をまとめたものです。

  • 呼び出し元のプロセスは、ローカル システム アカウントで実行されている必要があります。
  • ユーザー インターフェイスを直接表示するプロセスでは、 WinBioAcquireFocus を呼び出さないでください。 GUI および CUI アプリケーションのフォーカスを取得する方法については、前述の説明を参照してください。
  • 生体認証 API 呼び出し中にユーザー インターフェイスを直接表示しないサービスまたはデタッチされたプロセスのみが、この関数を呼び出す必要があります。
次の関数を呼び出すときにフォーカスを取得しないと、予期しない方法で動作します。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winbio.h (Winbio.h を含む)
Library Winbio.lib
[DLL] Winbio.dll

こちらもご覧ください

クライアント アプリケーション関数

WinBioEnrollBegin