Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Énumère toutes les bases de données inscrites qui correspondent à un type spécifié.
Syntaxe
HRESULT WinBioEnumDatabases(
[in] WINBIO_BIOMETRIC_TYPE Factor,
[out] WINBIO_STORAGE_SCHEMA **StorageSchemaArray,
[out] SIZE_T *StorageCount
);
Paramètres
[in] Factor
Masque de bits de WINBIO_BIOMETRIC_TYPE indicateurs qui spécifient les types d’unités biométriques à énumérer. Seule WINBIO_TYPE_FINGERPRINT est actuellement prise en charge.
[out] StorageSchemaArray
Adresse d’une variable qui reçoit un pointeur vers un tableau de structures WINBIO_STORAGE_SCHEMA qui contiennent des informations sur chaque base de données. Si la fonction ne réussit pas, le pointeur est défini sur NULL. Si la fonction réussit, vous devez passer le pointeur à WinBioFree pour libérer la mémoire allouée en interne pour le tableau.
[out] StorageCount
Pointeur vers une valeur qui spécifie le nombre de structures pointées par le paramètre StorageSchemaArray .
Valeur retournée
Si la fonction réussit, elle retourne S_OK. Si la fonction échoue, elle retourne une valeur HRESULT qui indique l’erreur. Les valeurs possibles incluent, mais ne sont pas limitées à celles du tableau suivant. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.
| Code de retour | Descriptif |
|---|---|
|
Le masque de bits contenu dans le paramètre Factor contient un ou plusieurs bits de type non valides. |
|
La mémoire est insuffisante pour terminer la requête. |
|
Les paramètres StorageSchemaArray et StorageCount ne peuvent pas être NULL. |
Remarques
Seule WINBIO_TYPE_FINGERPRINT est actuellement prise en charge dans le paramètre Factor .
Si des informations sur plusieurs bases de données sont retournées dans le tableau de structures pointées par le paramètre StorageSchemaArray , les bases de données ne sont pas garanties dans un ordre particulier.
Une fois que vous avez terminé d’utiliser les structures retournées au paramètre StorageSchemaArray , vous devez appeler WinBioFree pour libérer la mémoire allouée en interne pour le tableau.
Examples
L’exemple de code suivant appelle WinBioEnumDatabases pour énumérer les bases de données biométriques sur le système. L’exemple inclut également une fonction, DisplayGuid, pour afficher l’ID de base de données. Lien vers la bibliothèque statique Winbio.lib et incluez les fichiers d’en-tête suivants :
- Windows.h
- Stdio.h
- Conio.h
- Winbio.h
HRESULT EnumDatabases( )
{
// Declare variables.
HRESULT hr = S_OK;
PWINBIO_STORAGE_SCHEMA storageSchemaArray = NULL;
SIZE_T storageCount = 0;
SIZE_T index = 0;
// Enumerate the databases.
hr = WinBioEnumDatabases(
WINBIO_TYPE_FINGERPRINT, // Type of biometric unit
&storageSchemaArray, // Array of database schemas
&storageCount ); // Number of database schemas
if (FAILED(hr))
{
wprintf_s(L"\nWinBioEnumDatabases failed. hr = 0x%x\n", hr);
goto e_Exit;
}
// Display information for each database.
wprintf_s(L"\nDatabases:\n");
for (index = 0; index < storageCount; ++index)
{
wprintf_s(L"\n[%d]: \tBiometric factor: 0x%08x\n",
index,
storageSchemaArray[index].BiometricFactor );
wprintf_s(L"\tDatabase ID: ");
DisplayGuid(&storageSchemaArray[index].DatabaseId);
wprintf_s(L"\n");
wprintf_s(L"\tData format: ");
DisplayGuid(&storageSchemaArray[index].DataFormat);
wprintf_s(L"\n");
wprintf_s(L"\tAttributes: 0x%08x\n",
storageSchemaArray[index].Attributes);
wprintf_s(L"\tFile path: %ws\n",
storageSchemaArray[index].FilePath );
wprintf_s(L"\tCnx string: %ws\n",
storageSchemaArray[index].ConnectionString );
wprintf_s(L"\n");
}
e_Exit:
if (storageSchemaArray != NULL)
{
WinBioFree(storageSchemaArray);
storageSchemaArray = NULL;
}
wprintf_s(L"\nPress any key to exit...");
_getch();
return hr;
}
//------------------------------------------------------------------------
// The following function displays a GUID to the console window.
//
VOID DisplayGuid( __in PWINBIO_UUID Guid )
{
wprintf_s(
L"{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
Guid->Data1,
Guid->Data2,
Guid->Data3,
Guid->Data4[0],
Guid->Data4[1],
Guid->Data4[2],
Guid->Data4[3],
Guid->Data4[4],
Guid->Data4[5],
Guid->Data4[6],
Guid->Data4[7]
);
}
Spécifications
| Requirement | Valeur |
|---|---|
| Client minimum requis | Windows 7 [applications de bureau uniquement] |
| Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
| plateforme cible | Fenêtres |
| Header | winbio.h (inclure Winbio.h) |
| Library | Winbio.lib |
| DLL | Winbio.dll |