PIBIO_STORAGE_GET_RECORD_COUNT_FN Rückruffunktion (winbio_adapter.h)
Wird vom Windows Biometric Framework oder vom Moduladapter aufgerufen, um die Anzahl der Vorlagendatensätze im Pipelineergebnissatz abzurufen.
Syntax
PIBIO_STORAGE_GET_RECORD_COUNT_FN PibioStorageGetRecordCountFn;
HRESULT PibioStorageGetRecordCountFn(
[in, out] PWINBIO_PIPELINE Pipeline,
[out] PSIZE_T RecordCount
)
{...}
Parameter
[in, out] Pipeline
Zeiger auf eine WINBIO_PIPELINE Struktur, die der biometrischen Einheit zugeordnet ist, die den Vorgang ausführt.
[out] RecordCount
Zeiger auf eine Variable, die die Anzahl der Vorlagendatensätze im Resultset empfängt.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt sie S_OK zurück. Wenn die Funktion fehlschlägt, muss sie einen der folgenden HRESULT-Werte zurückgeben, um den Fehler anzugeben.
Rückgabecode | Beschreibung |
---|---|
|
Ein obligatorisches Zeigerargument ist NULL. |
|
Die Abfrage war erfolgreich, aber es konnten keine übereinstimmenden Datensätze gefunden werden. |
|
Das StorageContext-Element des Pipelineobjekts ist NULL , oder das FileHandle-Element ist ungültig. |
Hinweise
Die Anzahl der Datensätze, die sich derzeit im Resultset befinden, wird durch den letzten Aufruf der StorageAdapterQueryByContent-Funktion oder der StorageAdapterQueryBySubject-Funktion bestimmt.
Beispiele
Der folgende Pseudocode zeigt eine mögliche Implementierung dieser Funktion. Das Beispiel wird nicht kompiliert. Sie müssen es an Ihren Zweck anpassen.
/////////////////////////////////////////////////////////////////////////////////////////
//
// StorageAdapterGetRecordCount
//
// Purpose:
// Retrieves the number of template records in the pipeline result set.
//
// Parameters:
// Pipeline - Pointer to a WINBIO_PIPELINE structure associated with
// the biometric unit performing the operation.
// RecordCount - Pointer to a variable that receives the number of template
// records in the result set.
//
static HRESULT
WINAPI
StorageAdapterGetRecordCount(
__inout PWINBIO_PIPELINE Pipeline,
__out PSIZE_T RecordCount
)
{
HRESULT hr = S_OK;
// Verify that pointer arguments are not NULL.
if (!ARGUMENT_PRESENT(Pipeline) ||
!ARGUMENT_PRESENT(RecordCount))
{
hr = E_POINTER;
goto cleanup;
}
// Retrieve the context from the pipeline.
PWINBIO_STORAGE_CONTEXT storageContext = (PWINBIO_STORAGE_CONTEXT)Pipeline->StorageContext;
// Verify the pipeline state.
if (storageContext == NULL || storageContext->FileHandle == INVALID_HANDLE_VALUE)
{
hr = WINBIO_E_INVALID_DEVICE_STATE;
goto cleanup;
}
// Call a custom function (_ResultSetGetCount) to retrieve the number of
// records that the most recent query left in the result set.
hr = _ResultSetGetCount( &storageContext->ResultSet, RecordCount);
cleanup:
return hr;
}
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winbio_adapter.h (einschließlich Winbio_adapter.h) |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für