DrtStartSearch-Funktion (drt.h)

Die DrtStartSearch-Funktion durchsucht den DRT anhand von Kriterien, die in der DRT_SEARCH_INFO-Struktur angegeben sind, nach einem Schlüssel.

Syntax

HRESULT DrtStartSearch(
  [in]           HDRT                  hDrt,
  [in]           DRT_DATA              *pKey,
  [in, optional] const DRT_SEARCH_INFO *pInfo,
                 ULONG                 timeout,
  [in]           HANDLE                hEvent,
  [in, optional] const PVOID           pvContext,
  [out]          HDRT_SEARCH_CONTEXT   *hSearchContext
);

Parameter

[in] hDrt

Das von der DrtOpen-Funktion zurückgegebene DRT-Handle .

[in] pKey

Zeiger auf die DRT_DATA-Struktur , die den Schlüssel enthält.

[in, optional] pInfo

Zeiger auf die DRT_SEARCH_INFO-Struktur , die die Eigenschaften der Suche angibt.

timeout

Gibt die Millisekunden an, bis die Suche beendet wird.

[in] hEvent

Behandeln Sie das Ereignis, das signalisiert wird, wenn die DrtStartSearch-API beendet oder ein Zwischenknoten gefunden wird.

[in, optional] pvContext

Zeiger auf die Kontextdaten, die über das Ereignis an die Anwendung übergeben werden.

[out] hSearchContext

Handle, das im Aufruf von DrtEndSearch verwendet wird.

Rückgabewert

Diese Funktion gibt bei Erfolg S_OK zurück. Weitere mögliche Werte sind:

Rückgabecode Beschreibung
E_HANDLE
hDrt ist ein ungültiges Handle oder phKeyRegistration ist ein ungültiges Handle.
E_INVALIDARG
  • hSearchContext ist NULL.
  • pKey ist NULL
  • Das pb-Element der DRT_DATA Struktur von pKey ist NULL.
  • pInfo wurde übergeben, der Mindestschlüssel wird in pInfo für die Bereichssuche festgelegt, aber der maximale Schlüssel ist NULL.
  • pInfo wurde übergeben, der maximale Schlüssel wird in pInfo für die Bereichssuche festgelegt, aber der Mindestschlüssel ist NULL.
DRT_E_INVALID_KEY_SIZE
  • Das cb-Element der DRT_DATA Struktur von pKey ist nicht gleich 256 Bits.
  • pInfo wurde übergeben, aber die Schlüsselgröße des Mindestschlüsselsatzes in pInfo ist nicht gleich 256 Bit.
  • pInfo wurde übergeben, aber die Schlüsselgröße des maximalen Schlüsselsatzes in pInfo ist nicht gleich 256 Bit.
DRT_E_INVALID_SEARCH_INFO
pInfo wurde übergeben, aber die dwSize von pInfo entspricht nicht der Größe der DRT_SEARCH_INFO-Struktur .
DRT_E_INVALID_MAX_ENDPOINTS
pInfo wurde übergeben, aber maximale Endpunkte (cMaxEndpoints) ist in pInfo auf 0 festgelegt, oder pInfo wurde übergeben, aber cMaxEndpoints ist größer als 1, wobei fAnyMatchInRange auf TRUE festgelegt ist.
DRT_E_INVALID_SEARCH_RANGE
Min- und max-Schlüsselwerte sind gleich, aber Ziel ist unterschiedlich.
DRT_E_FAULTED
Die DRT-Cloud befindet sich im fehlerhaften Zustand.
E_OUTOFMEMORY
Das System hat nicht genügend Arbeitsspeicher.
E_UNEXPECTED
Das DRT wird heruntergefahren.
E_FAIL
Ein unerwarteter schwerwiegender Fehler ist aufgetreten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile drt.h
Bibliothek Drt.lib
DLL Drt.dll

Weitere Informationen

DRT_SEARCH_INFO

DrtContinueSearch

DrtEndSearch

DrtOpen