Skip to main content
WinBioAsyncEnumDatabases function

Asynchronously enumerates all registered databases that match a specified type. For a synchronous version of this function, see WinBioEnumDatabases.


HRESULT WINAPI WinBioAsyncEnumDatabases(
  _In_ WINBIO_FRAMEWORK_HANDLE  FrameworkHandle,


FrameworkHandle [in]

Handle to the framework session opened by calling WinBioAsyncOpenFramework.

Factor [in]

A bitmask of WINBIO_BIOMETRIC_TYPE flags that specifies the biometric database types to be enumerated. Only WINBIO_TYPE_FINGERPRINT is currently supported.

Return value

The function returns an HRESULT indicating success or failure. Note that success indicates only that the function's arguments were valid. Failures encountered during the execution of the operation will be returned asynchronously to a WINBIO_ASYNC_RESULT structure using the notification method specified in the call to WinBioAsyncOpenFramework.

Return codeDescription

You must set the FrameworkHandle argument.


The bitmask contained in the Factor parameter contains one or more an invalid type bits.


There was insufficient memory to complete the request.


The FrameworkHandle argument must represent an asynchronous framework session.



The WinBioAsyncEnumDatabases function uses a handle to the framework session opened by calling WinBioAsyncOpenFramework. The framework allocates a WINBIO_ASYNC_RESULT structure and uses it to return information about operation success or failure. If the enumeration operation is successful, the framework returns an array of schemas that include information about each enumerated database. If the operation is unsuccessful, the framework uses the WINBIO_ASYNC_RESULT structure to return error information. The structure is returned to the application callback or to the application message queue, depending on the value you set in the NotificationMethod parameter of the WinBioAsyncOpenFramework function.

  • If you choose to receive completion notices by using a callback, you must implement a PWINBIO_ASYNC_COMPLETION_CALLBACK function and set the NotificationMethod parameter to WINBIO_ASYNC_NOTIFY_CALLBACK.
  • If you choose to receive completion notices by using the application message queue, you must set the NotificationMethod parameter to WINBIO_ASYNC_NOTIFY_MESSAGE. The framework returns a WINBIO_ASYNC_RESULT pointer to the LPARAM field of the window message.

The array of schemas is returned in an EnumDatabases structure nested inside the WINBIO_ASYNC_RESULT structure. You must call WinBioFree to release the WINBIO_ASYNC_RESULT structure after you have finished using it.

Calling WinBioAsyncEnumDatabases causes a single notification to be sent to the client application.


Minimum supported client

Windows 8 [desktop apps only]

Minimum supported server

Windows Server 2012 [desktop apps only]


Winbio.h (include Winbio.h)





See also