Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Enumera todos os bancos de dados registrados que correspondem a um tipo especificado.
Sintaxe
HRESULT WinBioEnumDatabases(
[in] WINBIO_BIOMETRIC_TYPE Factor,
[out] WINBIO_STORAGE_SCHEMA **StorageSchemaArray,
[out] SIZE_T *StorageCount
);
Parâmetros
[in] Factor
Uma máscara de bits de sinalizadores WINBIO_BIOMETRIC_TYPE que especifica os tipos de unidade biométrica a serem enumerados. No momento, há suporte apenas para WINBIO_TYPE_FINGERPRINT.
[out] StorageSchemaArray
Endereço de uma variável que recebe um ponteiro para uma matriz de estruturas WINBIO_STORAGE_SCHEMA que contêm informações sobre cada banco de dados. Se a função não for bem-sucedida, o ponteiro será definido como NULL. Se a função for bem-sucedida, você deverá passar o ponteiro para WinBioFree para liberar a memória alocada internamente para a matriz.
[out] StorageCount
Ponteiro para um valor que especifica o número de estruturas apontadas pelo parâmetro StorageSchemaArray .
Valor de retorno
Se a função for bem-sucedida, ela retornará S_OK. Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os valores possíveis incluem, mas não se limitam a, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT Comuns.
| Código de retorno | Description |
|---|---|
|
A máscara de bits contida no parâmetro Factor contém um ou mais bits de tipo inválidos. |
|
Não havia memória suficiente para concluir a solicitação. |
|
Os parâmetros StorageSchemaArray e StorageCount não podem ser NULL. |
Observações
No momento, há suporte apenas WINBIO_TYPE_FINGERPRINT no parâmetro Factor .
Se informações sobre vários bancos de dados forem retornadas na matriz de estruturas apontadas pelo parâmetro StorageSchemaArray , os bancos de dados não deverão estar em nenhuma ordem específica.
Depois de terminar de usar as estruturas retornadas para o parâmetro StorageSchemaArray , você deve chamar WinBioFree para liberar a memória alocada internamente para a matriz.
Exemplos
O exemplo de código a seguir chama WinBioEnumDatabases para enumerar os bancos de dados biométricos no sistema. O exemplo também inclui uma função, DisplayGuid, para exibir a ID do banco de dados. Vincule-se à biblioteca estática Winbio.lib e inclua os seguintes arquivos de cabeçalho:
- 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]
);
}
Requirements
| Requirement | Value |
|---|---|
| Cliente mínimo suportado | Windows 7 [somente aplicativos da área de trabalho] |
| Servidor mínimo compatível | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
| da Plataforma de Destino | Windows |
| Header | winbio.h (inclua Winbio.h) |
| Library | Winbio.lib |
| de DLL | Winbio.dll |