IMAPIContainer::GetSearchCriteria
Gilt für: Outlook 2013 | Outlook 2016
Ruft die Suchkriterien für den Container ab.
HRESULT GetSearchCriteria(
ULONG ulFlags,
LPSRestriction FAR * lppRestriction,
LPENTRYLIST FAR * lppContainerList,
ULONG FAR * lpulSearchState
);
Parameter
ulFlags
[in] Eine Bitmaske von Flags, die den Typ der übergebenen Zeichenfolgen steuert. Das folgende Flag kann festgelegt werden:
MAPI_UNICODE
Die übergebenen Zeichenfolgen liegen im Unicode-Format vor. Wenn das MAPI_UNICODE-Flag nicht festgelegt ist, liegen die Zeichenfolgen im ANSI-Format vor.
lppRestriction
[out] Ein Zeiger auf einen Zeiger auf eine SRestriction-Struktur , die die Suchkriterien definiert. Wenn eine Clientanwendung NULL im lppRestriction-Parameter übergibt, gibt GetSearchCriteria keine SRestriction-Struktur zurück.
lppContainerList
[out] Ein Zeiger auf einen Zeiger auf ein Array von Eingabebezeichnern, die Container darstellen, die in die Suche eingeschlossen werden sollen. Wenn ein Client NULL im lppContainerList-Parameter übergibt, gibt GetSearchCriteria kein Array von Eingabebezeichnern zurück.
lpulSearchState
[out] Ein Zeiger auf eine Bitmaske von Flags, mit der der aktuelle Status der Suche angegeben wird. Wenn ein Client NULL im lpulSearchState-Parameter übergibt, gibt GetSearchCriteria keine Flags zurück. Die folgenden Flags können festgelegt werden:
SEARCH_FOREGROUND (0x1)
Die Suche sollte relativ zu anderen Suchvorgängen mit hoher Priorität ausgeführt werden. Wenn dieses Flag nicht festgelegt ist, wird die Suche relativ zu anderen Suchvorgängen mit normaler Priorität ausgeführt.
SEARCH_REBUILD (0x2)
Die Suche befindet sich im CPU-intensiven Modus ihres Vorgangs und versucht, Nachrichten zu finden, die den Kriterien entsprechen. Wenn dieses Flag nicht festgelegt ist, ist der CPU-intensive Teil des Suchvorgangs abgelaufen. Dieses Flag hat nur eine Bedeutung, wenn die Suche aktiv ist (d. h. wenn das SEARCH_RUNNING-Flag festgelegt ist).
SEARCH_RECURSIVE (0x4)
Die Suche sucht in angegebenen Containern und allen ihren untergeordneten Containern nach übereinstimmenden Einträgen. Wenn dieses Flag nicht festgelegt ist, werden nur die Container durchsucht, die explizit im letzten Aufruf der IMAPIContainer::SetSearchCriteria-Methode enthalten sind.
SEARCH_RUNNING (0x8)
Die Suche ist aktiv, und die Inhaltstabelle des Containers wird aktualisiert, um Änderungen im Nachrichtenspeicher oder Adressbuch widerzuspiegeln. Wenn dieses Flag nicht festgelegt ist, ist die Suche inaktiv, und die Inhaltstabelle ist statisch.
SEARCH_COMPLETE (0x1000)
Die Suchergebnisse sind vollständig.
SEARCH_PARTIAL (0x2000)
Es wurden nur einige Teile der Nachrichten eingeschlossen.
SEARCH_STATIC (0x10000)
Die Suche ist statisch.
SEARCH_MAYBE_STATIC (0x20000)
Die Suche wird noch ausgewertet.
CI_TOTALLY (0x1000000)
Die Suche erfolgt ausschließlich mithilfe der Inhaltsindizierung.
CI_WITH_TWIR_RESIDUAL (0x2000000)
TWIR_MOSTLY (0x4000000)
TWIR_TOTALLY (0x8000000)
Die Suche erfolgt ohne Verwendung der Inhaltsindizierung und ausschließlich mit Tabellen mit Einschränkungen.
Rückgabewert
S_OK
Die Suchkriterien wurden erfolgreich abgerufen.
MAPI_E_BAD_CHARWIDTH
Entweder wurde das flag MAPI_UNICODE festgelegt, und die Implementierung unterstützt Unicode nicht, oder MAPI_UNICODE wurde nicht festgelegt und die Implementierung unterstützt nur Unicode.
MAPI_E_NOT_INITIALIZED
Suchkriterien für den Container wurden nie festgelegt.
Hinweise
Die IMAPIContainer::GetSearchCriteria-Methode ruft die Suchkriterien für einen Container ab, der Suchvorgänge unterstützt, in der Regel ein Suchergebnisordner. Sie erstellen Suchkriterien, indem Sie die IMAPIContainer::SetSearchCriteria-Methode eines Containers aufrufen.
Hinweise für Implementierer
Adressbuchcontainer müssen GetSearchCriteria möglicherweise nur unterstützen, wenn sie die erweiterten Suchfunktionen bereitstellen, die der eigenschaft PR_SEARCH (PidTagSearch) zugeordnet sind. Weitere Informationen zum Implementieren der erweiterten Suchfunktion für Adressbuchcontainer finden Sie unter Implementieren der erweiterten Suche.
Hinweise für Aufrufer
Wenn Sie mit den Datenstrukturen fertig sind, auf die die Parameter lppRestriction und lppContainerList verweisen, rufen Sie MAPIFreeBuffer einmal für jede zu veröffentlichende Struktur auf.
MFCMAPI-Referenz
Einen MFCMAP-Beispielcode finden Sie in der folgenden Tabelle.
Datei | Funktion | Kommentar |
---|---|---|
HierarchyTableDlg.cpp |
CHierarchyTableDlg::OnEditSearchCriteria |
MFCMAPI verwendet die IMAPIContainer::GetSearchCriteria-Methode , um Suchkriterien aus einem anzuzeigenden Ordner abzurufen. |
Siehe auch
IMAPIContainer::SetSearchCriteria