Funzione WinBioFree (winbio.h)
Rilascia la memoria allocata per l'applicazione client da una chiamata precedente a una funzione API Di Windows Biometric Framework. A partire da Windows 10, build 1607, questa funzione è disponibile per l'uso con un'immagine per dispositivi mobili.
Sintassi
HRESULT WinBioFree(
[in] PVOID Address
);
Parametri
[in] Address
Indirizzo del blocco di memoria da eliminare.
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 |
---|---|
|
Il parametro Address non può essere NULL. |
Commenti
Più funzioni nell'API Windows Biometric Framework allocano memoria per l'applicazione client e passano l'indirizzo di tale memoria al client. Per evitare perdite di memoria, è necessario chiamare WinBioFree per eliminare il blocco al termine dell'uso delle informazioni contenute. La memoria viene eliminata passandone l'indirizzo a WinBioFree. È possibile trovare l'indirizzo de-referenziando il puntatore specificato dal parametro appropriato in ognuna delle funzioni seguenti.
Funzione | Parametro | Tipo di blocco allocato |
---|---|---|
WinBioCaptureSample | Esempio | Struttura |
WinBioEnumBiometricUnits | UnitSchemaArray | Matrice di strutture |
WinBioEnumDatabases | StorageSchemaArray | Matrice di strutture |
WinBioEnumEnrollments | SubFactorArray | Matrice di numeri interi |
WinBioEnumServiceProviders | BspSchemaArray | Matrice di strutture |
EventCallBack | Event | Struttura |
CaptureCallback | Esempio | Struttura |
Esempio
La funzione seguente chiama WinBioEnumBiometricUnits per enumerare i sensori biometrici installati e chiama WinBioFree per rilasciare la memoria creata da WinBioEnumBiometricUnits. Collegarsi alla libreria statica Winbio.lib e includere i file di intestazione seguenti:
- Windows.h
- Stdio.h
- Conio.h
- Winbio.h
HRESULT EnumerateSensors( )
{
HRESULT hr = S_OK;
PWINBIO_UNIT_SCHEMA unitSchema = NULL;
SIZE_T unitCount = 0;
// Enumerate the installed biometric units.
hr = WinBioEnumBiometricUnits(
WINBIO_TYPE_FINGERPRINT, // Type of biometric unit
&unitSchema, // Array of unit schemas
&unitCount ); // Count of unit schemas
if (FAILED(hr))
{
wprintf_s(L"\nWinBioEnumBiometricUnits failed. hr = 0x%x\n", hr);
goto e_Exit;
}
e_Exit:
// Free memory.
if (unitSchema != NULL)
{
WinBioFree(unitSchema);
unitSchema = NULL;
}
return hr;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winbio.h (include Winbio.h) |
Libreria | Winbio.lib |
DLL | Winbio.dll |