WinBioEnrollselect 函数 (winbio.h)

指定在示例缓冲区中存在表示多个个体的数据时要注册的个体。 从 Windows 10 版本 1607 开始,此函数可用于移动映像。

语法

HRESULT WinBioEnrollSelect(
  [in] WINBIO_SESSION_HANDLE SessionHandle,
  [in] ULONGLONG             SelectorValue
);

参数

[in] SessionHandle

标识打开的生物识别会话 的WINBIO_SESSION_HANDLE 值。 通过调用 WinBioOpenSession 打开同步会话句柄。 通过调用 WinBioAsyncOpenSession 打开异步会话句柄。

若要注册面部识别,请使用 WinBioAsyncOpenSession ,并将 PoolType 参数设置为 WINBIO_POOL_SYSTEM 以获取句柄。

[in] SelectorValue

一个 值,该值标识要为注册选择的个人。

返回值

如果函数成功,则返回S_OK。 如果函数失败,它将返回指示错误的 HRESULT 值。 可能的值包括(但并不限于)下表中的项。 有关常见错误代码的列表,请参阅 常见 HRESULT 值

返回代码 说明
E_HANDLE
会话句柄无效。
E_INVALIDARG
SelectorValue 参数不能等于零。
WINBIO_E_INCORRECT_SESSION_TYPE
会话句柄与生物识别会话不对应。

注解

对于面部识别注册,可以通过以下两种方式之一找到正确的选择器值:

  • 以前发送的某个WINBIO_PRESENCE结构的 Id 成员的值。
  • NUI 人脸跟踪 API 生成的数据。
调用 WinBioEnrollSelect 可在调用 WinBioEnrollBegin 以启动注册序列后设置选择器值。 选择器值适用于所有后续 WinBioEnrollCapture 调用。 选择设置是临时的,在通过调用 WinBioEnrollCommitWinBioEnrollDiscard 完成注册序列时会自动清除。

如果为不需要消除歧义的生物识别因素(如指纹)调用 WinBioEnrollSelect ,则函数的返回值指示成功,但函数忽略选择器值。

如果不为需要调用函数的生物识别因素调用 WinBioEnrollSelect ,则后续调用 WinBioEnrollCapture 会失败并 出现WINBIO_E_SELECTION_REQUIRED 错误。

对于Windows 10,需要调用 WinBioEnrollSelect 的因素是面部特征和虹膜。

可以使用同步或异步会话句柄调用 WinBioEnrollSelect 。 与对 Windows 生物识别框架 API 函数的其他调用一样,使用异步会话句柄调用 WinBioEnrollSelect 时,返回值仅指示函数参数是可接受的。 操作本身的实际成功或失败将在 WINBIO_ASYNC_RESULT 结构中返回到通知例程。

要求

要求
最低受支持的客户端 Windows 10 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows
标头 winbio.h
Library Winbio.lib
DLL Winbio.dll

另请参阅

WINBIO_ASYNC_RESULT

WINBIO_PRESENCE

WinBioEnrollBegin

WinBioEnrollCapture

WinBioEnrollCommit

WinBioEnrollDiscard