Funzione WinBioAsyncOpenFramework (winbio.h)
Apre un handle per il framework biometrico. A partire da Windows 10, build 1607, questa funzione è disponibile per l'uso con un'immagine per dispositivi mobili. È possibile usare questo handle per enumerare in modo asincrono unità biometriche, database e provider di servizi e ricevere una notifica asincrona quando le unità biometriche vengono collegate al computer o rimosse.
Sintassi
HRESULT WinBioAsyncOpenFramework(
[in] WINBIO_ASYNC_NOTIFICATION_METHOD NotificationMethod,
[in, optional] HWND TargetWindow,
[in, optional] UINT MessageCode,
[in, optional] PWINBIO_ASYNC_COMPLETION_CALLBACK CallbackRoutine,
[in, optional] PVOID UserData,
[in] BOOL AsynchronousOpen,
[out] WINBIO_FRAMEWORK_HANDLE *FrameworkHandle
);
Parametri
[in] NotificationMethod
Specifica il modo in cui le notifiche di completamento per le operazioni asincrone in questa sessione del framework devono essere recapitate all'applicazione client. Deve essere uno dei valori seguenti.
[in, optional] TargetWindow
Handle della finestra che riceverà gli avvisi di completamento. Questo valore viene ignorato a meno che il parametro NotificationMethod non sia impostato su WINBIO_ASYNC_NOTIFY_MESSAGE.
[in, optional] MessageCode
Il codice del messaggio della finestra deve inviare il framework per indicare gli avvisi di completamento. Questo valore viene ignorato a meno che il parametro NotificationMethod non sia impostato su WINBIO_ASYNC_NOTIFY_MESSAGE. Il valore deve essere compreso nell'intervallo WM_APP (0x8000) per 0xBFFF.
Windows Biometric Framework imposta il valore LPARAM del messaggio sull'indirizzo della struttura WINBIO_ASYNC_RESULT che contiene i risultati dell'operazione. Devi chiamare WinBioFree per rilasciare la struttura dopo aver finito di usarla.
[in, optional] CallbackRoutine
Indirizzo della routine di callback da richiamare per gli avvisi di completamento. Questo valore viene ignorato a meno che il parametro NotificationMethod non sia impostato su WINBIO_ASYNC_NOTIFY_CALLBACK.
[in, optional] UserData
Indirizzo di un buffer fornito dal chiamante. Il buffer non viene modificato dal framework o dall'unità biometrica. Viene restituito nella struttura WINBIO_ASYNC_RESULT . L'applicazione può usare i dati per determinare quali azioni eseguire al ricevimento dell'avviso di completamento o per mantenere informazioni aggiuntive sull'operazione richiesta.
[in] AsynchronousOpen
Specifica se bloccare fino all'apertura della sessione del framework. Se si specifica FALSE , il processo viene bloccato. Se si specifica TRUE , la sessione viene aperta in modo asincrono.
Se si specifica FALSE per aprire la sessione del framework in modo sincrono, l'esito positivo o negativo viene restituito al chiamante direttamente da questa funzione nel valore restituito HRESULT . Se la sessione viene aperta correttamente, il primo evento di completamento asincrono ricevuto dall'applicazione sarà per un'operazione asincrona richiesta dopo l'apertura del framework.
Se si specifica TRUE per aprire la sessione del framework in modo asincrono, il primo avviso di completamento asincrono ricevuto sarà per l'apertura del framework. Se il parametro NotificationMethod è impostato su WINBIO_ASYNC_NOTIFY_CALLBACK, i risultati dell'operazione vengono recapitati alla struttura WINBIO_ASYNC_RESULT nella funzione di callback specificata dal parametro CallbackRoutine . Se il parametro NotificationMethod è impostato su WINBIO_ASYNC_NOTIFY_MESSAGE, i risultati dell'operazione vengono recapitati alla struttura WINBIO_ASYNC_RESULT a cui punta il campo LPARAM del messaggio della finestra.
[out] FrameworkHandle
Se la funzione non riesce, questo parametro sarà NULL.
Se la sessione viene aperta in modo sincrono e completata, questo parametro conterrà un puntatore all'handle di sessione.
Se si specifica che la sessione viene aperta in modo asincrono, questo metodo restituisce immediatamente, l'handle di sessione sarà NULL ed è necessario esaminare la struttura WINBIO_ASYNC_RESULT per determinare se la sessione è stata aperta correttamente.
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 |
---|---|
|
Memoria insufficiente per creare la sessione del framework. |
|
Se si imposta il metodo di notifica su WINBIO_ASYNC_NOTIFY_MESSAGE, il parametro TargetWindow non può essere NULL o HWND_BROADCAST e il parametro MessageCode non può essere zero (0). |
|
È necessario impostare il parametro FrameworkHandle e il parametro AsynchronousOpen .
Se si imposta il metodo di notifica su WINBIO_ASYNC_NOTIFY_CALLBACK, è necessario specificare anche l'indirizzo di una funzione di callback nel parametro CallbackRoutine . |
Commenti
L'handle del framework restituito dalla funzione WinBioAsyncOpenFramework può essere usato per generare notifiche di completamento asincrone per le funzioni seguenti:
- WinBioAsyncEnumBiometricUnits
- WinBioAsyncEnumDatabases
- WinBioAsyncEnumServiceProviders
- WinBioAsyncMonitorFrameworkChanges
Se si imposta il parametro AsynchronousOpen su TRUE, questa funzione restituirà S_OK non appena ha eseguito una convalida iniziale degli argomenti. Eventuali errori rilevati oltre tale punto verranno segnalati al chiamante usando il metodo specificato dal parametro NotificationMethod . Ovvero, un valore restituito con esito positivo indica solo che i parametri WinBioAsyncOpenFramework sono stati eseguiti correttamente e non che l'operazione di apertura sia riuscita. Per determinare se l'operazione di apertura è riuscita, è necessario esaminare la struttura WINBIO_ASYNC_RESULT .
Requisiti
Client minimo supportato | Windows 8 [solo app desktop] |
Server minimo supportato | Windows Server 2012 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winbio.h (include Winbio.h) |
Libreria | Winbio.lib |
DLL | Winbio.dll |