Compartir a través de


Función WinBioSetProperty (winbio.h)

Establece el valor de una propiedad estándar asociada a una sesión biométrica, unidad, plantilla o cuenta. A partir de Windows 10, compilación 1607, esta función está disponible para su uso con una imagen móvil.

Sintaxis

HRESULT WinBioSetProperty(
  [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,
  [in]           PVOID                    PropertyBuffer,
  [in]           SIZE_T                   PropertyBufferSize
);

Parámetros

[in] SessionHandle

Valor de WINBIO_SESSION_HANDLE que identifica una sesión biométrica abierta. Abra un identificador de sesión sincrónico llamando a WinBioOpenSession. Abra un identificador de sesión asincrónico llamando a WinBioAsyncOpenSession.

[in] PropertyType

Valor de WINBIO_PROPERTY_TYPE que especifica el tipo de la propiedad que desea establecer. Actualmente, debe ser WINBIO_PROPERTY_TYPE_ACCOUNT.

[in] PropertyId

Valor WINBIO_PROPERTY_ID que especifica la propiedad que se va a establecer. Actualmente, debe ser WINBIO_PROPERTY_ANTI_SPOOF_POLICY. El resto de las propiedades son de sólo lectura.

[in, optional] UnitId

Valor WINBIO_UNIT_ID que identifica la unidad biométrica. Para la propiedad WINBIO_PROPERTY_ANTI_SPOOF_POLICY , este valor debe ser 0.

[in, optional] Identity

Dirección de una estructura de WINBIO_IDENTITY que especifica la cuenta para la que desea establecer la propiedad.

[in, optional] SubFactor

Reservado. Debe ser WINBIO_SUBTYPE_NO_INFORMATION.

[in] PropertyBuffer

Puntero a una estructura que especifica el nuevo valor de la propiedad . Este valor no puede ser NULL. Para establecer la propiedad WINBIO_PROPERTY_ANTI_SPOOF_POLICY , la estructura debe ser una estructura WINBIO_ANTI_SPOOF_POLICY .

[in] PropertyBufferSize

Tamaño, en bytes, de la estructura a la que apunta el parámetro PropertyBuffer . Este valor no puede ser 0.

Valor devuelto

Si la función se ejecuta correctamente, devuelve S_OK. Si se produce un error en la función, devuelve un valor HRESULT que indica el error. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.

Código devuelto Descripción
E_HANDLE
El identificador de sesión especificado por el parámetro SessionHandle no es válido.
E_POINTER
Los parámetros Identity y PropertyBuffer no pueden ser NULL.
E_INVALIDARG
El parámetro PropertyType, PropertyId o PropertyBufferSize no puede ser 0.
WINBIO_E_INVALID_PROPERTY_TYPE
El valor del argumento PropertyType es incorrecto.
WINBIO_E_INVALID_PROPERTY_ID
El valor del argumento PropertyId es incorrecto.
WINBIO_E_LOCK_VIOLATION
El autor de la llamada intentó establecer una propiedad que reside dentro de una región bloqueada.
WINBIO_E_UNSUPPORTED_PROPERTY
El objeto no admite la propiedad especificada.
WINBIO_E_ENROLLMENT_IN_PROGRESS
No se pudo completar la operación porque la unidad biométrica especificada se está usando actualmente para una transacción de inscripción (solo para el grupo de sistemas).

Comentarios

Para usar WinBioSetProperty de forma sincrónica, llame a la función con un identificador de sesión creado mediante una llamada a WinBioOpenSession. La función se bloquea hasta que se completa la operación o se produce un error. Para evitar pérdidas de memoria, debe llamar a WinBioFree para liberar la memoria a la que apunta el parámetro PropertyBuffer cuando haya terminado de usar los datos contenidos en el búfer.

Para usar WinBioSetProperty de forma asincrónica, llame a la función con un identificador de sesión creado mediante una llamada a WinBioAsyncOpenSession. El marco asigna una estructura de WINBIO_ASYNC_RESULT y la usa para devolver información sobre el éxito o error de la operación. La estructura WINBIO_ASYNC_RESULT se devuelve a la devolución de llamada de la aplicación o a la cola de mensajes de la aplicación, en función del valor establecido en el parámetro NotificationMethod de la función WinBioAsyncOpenSession :

  • Si decide recibir avisos de finalización mediante una devolución de llamada, debe implementar una función de PWINBIO_ASYNC_COMPLETION_CALLBACK y establecer el parámetro NotificationMethod en WINBIO_ASYNC_NOTIFY_CALLBACK.
  • Si decide recibir avisos de finalización mediante la cola de mensajes de la aplicación, debe establecer el parámetro NotificationMethod en WINBIO_ASYNC_NOTIFY_MESSAGE. El marco devuelve un puntero WINBIO_ASYNC_RESULT al campo LPARAM del mensaje de ventana.
Para evitar pérdidas de memoria, debe llamar a WinBioFree para liberar la estructura de WINBIO_ASYNC_RESULT una vez que haya terminado de usarlo.

Requisitos

   
Cliente mínimo compatible Windows 10 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2016 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winbio.h
Library Winbio.lib
Archivo DLL Winbio.dll

Consulte también

WinBioFree

WinBioGetProperty