Condividi tramite


Funzione WinBioSetProperty (winbio.h)

Imposta il valore di una proprietà standard associata a una sessione biometrica, a un'unità, a un modello o a un account. A partire da Windows 10, build 1607, questa funzione è disponibile per l'uso con un'immagine per dispositivi mobili.

Sintassi

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
);

Parametri

[in] SessionHandle

Valore WINBIO_SESSION_HANDLE che identifica una sessione biometrica aperta. Aprire un handle di sessione sincrono chiamando WinBioOpenSession. Aprire un handle di sessione asincrono chiamando WinBioAsyncOpenSession.

[in] PropertyType

Valore WINBIO_PROPERTY_TYPE che specifica il tipo della proprietà che si desidera impostare. Attualmente deve essere WINBIO_PROPERTY_TYPE_ACCOUNT.

[in] PropertyId

Valore WINBIO_PROPERTY_ID che specifica la proprietà da impostare. Attualmente deve essere WINBIO_PROPERTY_ANTI_SPOOF_POLICY. Tutte le altre proprietà sono di sola lettura.

[in, optional] UnitId

Valore WINBIO_UNIT_ID che identifica l'unità biometrica. Per la proprietà WINBIO_PROPERTY_ANTI_SPOOF_POLICY , questo valore deve essere 0.

[in, optional] Identity

Indirizzo di una struttura di WINBIO_IDENTITY che specifica l'account per cui si desidera impostare la proprietà.

[in, optional] SubFactor

Riservato. Deve essere WINBIO_SUBTYPE_NO_INFORMATION.

[in] PropertyBuffer

Puntatore a una struttura che specifica il nuovo valore per la proprietà. Questo valore non può essere NULL. Per impostare la proprietà WINBIO_PROPERTY_ANTI_SPOOF_POLICY , la struttura deve essere una struttura WINBIO_ANTI_SPOOF_POLICY .

[in] PropertyBufferSize

Dimensione, in byte, della struttura a cui punta il parametro PropertyBuffer . Questo valore non può essere 0.

Valore restituito

Se la funzione ha esito positivo, restituisce S_OK. Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.

Codice restituito Descrizione
E_HANDLE
L'handle di sessione specificato dal parametro SessionHandle non è valido.
E_POINTER
I parametri Identity e PropertyBuffer non possono essere NULL.
E_INVALIDARG
Il parametro PropertyType, PropertyId o PropertyBufferSize non può essere 0.
WINBIO_E_INVALID_PROPERTY_TYPE
Il valore dell'argomento PropertyType non è corretto.
WINBIO_E_INVALID_PROPERTY_ID
Il valore dell'argomento PropertyId non è corretto.
WINBIO_E_LOCK_VIOLATION
Il chiamante ha tentato di impostare una proprietà che risiede all'interno di un'area bloccata.
WINBIO_E_UNSUPPORTED_PROPERTY
L'oggetto non supporta la proprietà specificata.
WINBIO_E_ENROLLMENT_IN_PROGRESS
Impossibile completare l'operazione perché l'unità biometrica specificata è attualmente in uso per una transazione di registrazione (solo pool di sistema).

Commenti

Per usare WinBioSetProperty in modo sincrono, chiamare la funzione con un handle di sessione creato chiamando WinBioOpenSession. La funzione si blocca finché l'operazione non viene completata o viene rilevato un errore. Per evitare perdite di memoria, è necessario chiamare WinBioFree per rilasciare la memoria a cui punta il parametro PropertyBuffer al termine dell'utilizzo dei dati contenuti nel buffer.

Per usare WinBioSetProperty in modo asincrono, chiamare la funzione con un handle di sessione creato chiamando WinBioAsyncOpenSession. Il framework alloca una struttura WINBIO_ASYNC_RESULT e la usa per restituire informazioni sull'esito positivo o negativo dell'operazione. La struttura WINBIO_ASYNC_RESULT viene restituita al callback dell'applicazione o alla coda dei messaggi dell'applicazione, a seconda del valore impostato nel parametro NotificationMethod della funzione WinBioAsyncOpenSession :

  • Se si sceglie di ricevere avvisi di completamento usando un callback, è necessario implementare una funzione PWINBIO_ASYNC_COMPLETION_CALLBACK e impostare il parametro NotificationMethod su WINBIO_ASYNC_NOTIFY_CALLBACK.
  • Se si sceglie di ricevere avvisi di completamento usando la coda dei messaggi dell'applicazione, è necessario impostare il parametro NotificationMethod su WINBIO_ASYNC_NOTIFY_MESSAGE. Il framework restituisce un puntatore WINBIO_ASYNC_RESULT al campo LPARAM del messaggio della finestra.
Per evitare perdite di memoria, è necessario chiamare WinBioFree per rilasciare la struttura WINBIO_ASYNC_RESULT dopo aver finito di usarla.

Requisiti

   
Client minimo supportato Windows 10 [solo app desktop]
Server minimo supportato Windows Server 2016 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winbio.h
Libreria Winbio.lib
DLL Winbio.dll

Vedi anche

WinBioFree

WinBioGetProperty