Поделиться через


Функция 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
Дескриптор сеанса не соответствует биометрическим сеансам.

Комментарии

Для регистрации в распознавании лиц правильное значение селектора можно найти двумя способами:

  • Значение элемента Id одной из ранее отправленных WINBIO_PRESENCE структур.
  • Данные, созданные API отслеживания лиц NUI.
Вызовите WinBioEnrollSelect , чтобы задать значение селектора после вызова WinBioEnrollBegin для запуска последовательности регистрации. Значение селектора применяется ко всем последующим вызовам WinBioEnrollCapture . Параметр выбора является временным и автоматически очищается при завершении последовательности регистрации путем вызова WinBioEnrollCommit или WinBioEnrollDiscard.

При вызове WinBioEnrollSelect для биометрических факторов, которые не требуют неоднозначности, таких как отпечатки пальцев, возвращаемое значение функции указывает на успех, но функция игнорирует значение селектора.

Если вы не вызываете WinBioEnrollSelect для биометрического фактора, требующего вызова функции, последующие вызовы WinBioEnrollCapture завершаются ошибкой WINBIO_E_SELECTION_REQUIRED .

Для Windows 10 факторы, требующие вызова WinBioEnrollSelect, являются черты лица и радужной оболочки глаза.

Вы можете вызвать WinBioEnrollSelect с помощью синхронного или асинхронного дескриптора сеанса. Как и в случае с другими вызовами функций API Windows Biometric Framework, при вызове WinBioEnrollSelect с асинхронным дескриптором сеанса возвращаемое значение указывает только на то, что параметры функции были приемлемыми. Фактический успех или сбой самой операции будет возвращен в процедуру уведомлений в WINBIO_ASYNC_RESULT структуре.

Требования

Требование Значение
Минимальная версия клиента Windows 10 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Целевая платформа Windows
Header winbio.h
Библиотека Winbio.lib
DLL Winbio.dll

См. также раздел

WINBIO_ASYNC_RESULT

WINBIO_PRESENCE

WinBioEnrollBegin

WinBioEnrollCapture

WinBioEnrollCommit

WinBioEnrollDiscard