WinBioGetProperty 関数 (winbio.h)
セッション、ユニット、またはテンプレートのプロパティを取得します。 Windows 10 ビルド 1607 以降では、この関数をモバイル イメージで使用できます。
構文
HRESULT WinBioGetProperty(
[in] WINBIO_SESSION_HANDLE SessionHandle,
[in] WINBIO_PROPERTY_TYPE PropertyType,
[in] WINBIO_PROPERTY_ID PropertyId,
[in, optional] WINBIO_UNIT_ID UnitId,
[in, optional] WINBIO_IDENTITY *Identity,
[in, optional] WINBIO_BIOMETRIC_SUBTYPE SubFactor,
PVOID *PropertyBuffer,
[out, optional] SIZE_T *PropertyBufferSize
);
パラメーター
[in] SessionHandle
開いている生体認証セッションを識別する WINBIO_SESSION_HANDLE 値。 WinBioOpenSession を呼び出して同期セッション ハンドルを開きます。 WinBioAsyncOpenSession を呼び出して非同期セッション ハンドルを開きます。
[in] PropertyType
プロパティ情報のソースを指定する WINBIO_PROPERTY_TYPE 値。 現在、これは WINBIO_PROPERTY_TYPE_UNIT または WINBIO_PROPERTY_TYPE_ACCOUNTする必要があります。 プロパティの種類の詳細については、「 WINBIO_PROPERTY_TYPE定数」を参照してください。
WINBIO_PROPERTY_TYPE_ACCOUNT値は、Windows 10 以降でサポートされています。
[in] PropertyId
クエリ を実行 するプロパティを指定するWINBIO_PROPERTY_ID値。 次の値を使用できます。
値 | 意味 |
---|---|
|
登録テンプレートを完了するために必要な優れた生体認証サンプルの最大数を見積もります。 プロパティ クエリの結果は、 PropertyBuffer パラメーターがヒントを含む ULONG 値を指すバッファーに返されます。 |
|
特定の生体認証ユニットに接続されているセンサー コンポーネントの機能と属性に関する拡張情報が含まれます。 プロパティ クエリの結果は、 PropertyBuffer パラメーターが WINBIO_EXTENDED_SENSOR_INFO 構造体として指すバッファーに返されます。 この値は、Windows 10 以降でサポートされています。 |
|
特定の生体認証ユニットに接続されているエンジン コンポーネントの機能と属性に関する拡張情報が含まれます。 プロパティ クエリの結果は、 PropertyBuffer パラメーターが WINBIO_EXTENDED_ENGINE_INFO 構造体として指すバッファーに返されます。 この値は、Windows 10 以降でサポートされています。 |
|
特定の生体認証ユニットに接続されているストレージ コンポーネントの機能と属性に関する拡張情報が含まれます。 プロパティ クエリの結果は、 PropertyBuffer パラメーターが WINBIO_EXTENDED_STORAGE_INFO 構造体として指すバッファーに返されます。 この値は、Windows 10 以降でサポートされています。 |
|
特定の生体認証ユニットで進行中の登録の状態に関する拡張情報が含まれます。 プロパティ クエリの結果は、 PropertyBuffer パラメーターが WINBIO_EXTENDED_ENROLLMENT_STATUS 構造体として指すバッファーに返されます。 生体認証ユニットで登録が進行中でない場合、返される構造体の TemplateStatus メンバーの値は WINBIO_E_INVALID_OPERATION。 この値は、Windows 10 以降でサポートされています。 |
|
特定のユーザー アカウントのスパム対策ポリシーの値を格納します。 プロパティ操作は、 PropertyBuffer パラメーターが WINBIO_ANTI_SPOOF_POLICY 構造体として指すバッファーで返されます。 この値は、Windows 10 以降でサポートされています。 |
これらのプロパティの詳細については、「 WINBIO_PROPERTY定数」を参照してください。
[in, optional] UnitId
生体認証ユニットを識別する WINBIO_UNIT_ID 値。 単位識別子を見つけるには、 WinBioEnumBiometricUnits または WinBioLocateSensor 関数を 呼び出します。
PropertyId パラメーターの値として WINBIO_PROPERTY_ANTI_SPOOF_POLICY を指定する場合は、UnitId パラメーターに 0 を指定します。 PropertyId パラメーターで他のプロパティを指定した場合、UnitId パラメーターに 0 を指定することはできません。
[in, optional] Identity
PropertyId パラメーターの値として WINBIO_PROPERTY_ANTI_SPOOF_POLICY を指定した場合に、アンチスポフティング ポリシーを取得するアカウントの SID を提供するWINBIO_IDENTITY構造体。
PropertyId パラメーターに他の値を指定する場合、Identity パラメーターは NULL である必要があります。
[in, optional] SubFactor
予約済み。 これは WINBIO_SUBTYPE_NO_INFORMATIONする必要があります。
PropertyBuffer
プロパティ値を受け取るバッファーへのポインターのアドレス。 さまざまなプロパティのこのバッファーの内容については、 PropertyId パラメーターのプロパティ値の説明を参照してください。
[out, optional] PropertyBufferSize
PropertyBuffer パラメーターが指すバッファーのサイズをバイト単位で受け取る変数へのポインター。
戻り値
関数が成功した場合は、S_OK を返します。 関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通の HRESULT 値」を参照してください。
リターン コード | 説明 |
---|---|
|
SessionHandle パラメーターで指定されたセッション ハンドルが無効です。 |
|
Identity、PropertyBuffer、または PropertyBufferSize 引数を NULL にすることはできません。 |
|
UnitId、Identity、または SubFactor 引数が正しくありません。 |
|
PropertyType 引数の値が正しくありません。 |
|
PropertyId 引数の値が正しくありません。 |
|
呼び出し元は、ロックされたリージョン内にあるプロパティに対してクエリを実行しようとしました。 |
|
クエリ対象のオブジェクトは、指定されたプロパティをサポートしていません。 |
|
指定された生体認証ユニットが現在登録トランザクションに使用されているため、操作を完了できませんでした (システム プールのみ)。 |
注釈
WinBioGetProperty を同期的に使用するには、WinBioOpenSession を呼び出して作成されたセッション ハンドルで 関数を呼び出します。 関数は、操作が完了するか、エラーが発生するまでブロックします。 WinBioGetProperty を同期的に使用するときにメモリ リークを防ぐには、バッファーに含まれるデータの使用が完了したときに PropertyBuffer パラメーターが指すメモリを解放するために WinBioFree を呼び出す必要があります。
WinBioGetProperty を非同期的に使用するには、WinBioAsyncOpenSession を呼び出して作成されたセッション ハンドルで 関数を呼び出します。 フレームワークは 、WINBIO_ASYNC_RESULT 構造体を割り当て、それを使用して操作の成功または失敗に関する情報を返します。 操作が成功した場合、フレームワークは入れ子になった GetProperty 構造体の情報を返します。 WINBIO_ASYNC_RESULT構造体は、WinBioAsyncOpenSession 関数の NotificationMethod パラメーターで設定した値に応じて、アプリケーション コールバックまたはアプリケーション メッセージ キューに返されます。
- コールバックを使用して完了通知を受け取る場合は、 PWINBIO_ASYNC_COMPLETION_CALLBACK 関数を実装し、 NotificationMethod パラメーターを WINBIO_ASYNC_NOTIFY_CALLBACK に設定する必要があります。
- アプリケーション メッセージ キューを使用して完了通知を受け取る場合は、 NotificationMethod パラメーターを WINBIO_ASYNC_NOTIFY_MESSAGE に設定する必要があります。 フレームワークは、ウィンドウ メッセージの LPARAM フィールドへのWINBIO_ASYNC_RESULT ポインターを返します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winbio.h (Winbio.h を含む) |
Library | Winbio.lib |
[DLL] | Winbio.dll |