IMAPISession::OpenAddressBook
Gilt für: Outlook 2013 | Outlook 2016
Öffnet das integrierte MAPI-Adressbuch und gibt einen IAddrBook-Zeiger für weiteren Zugriff zurück.
HRESULT OpenAddressBook(
ULONG_PTR ulUIParam,
LPCIID lpInterface,
ULONG ulFlags,
LPADRBOOK FAR * lppAdrBook
);
Parameter
ulUIParam
[in] Ein Handle für das übergeordnete Fenster des Dialogfelds "Allgemeine Adresse" und andere zugehörige Anzeigen.
lpInterface
[in] Ein Zeiger auf den Schnittstellenbezeichner (Interface Identifier, IID), der die Schnittstelle darstellt, die für den Zugriff auf das Adressbuch verwendet werden soll. Die Übergabe von NULL gibt einen Zeiger auf die Standardschnittstelle des Adressbuchs zurück, IAddrBook : IMAPIProp.
ulFlags
[in] Eine Bitmaske von Flags, die das Öffnen des Adressbuchs steuert. Das folgende Flag kann festgelegt werden:
AB_NO_DIALOG
Unterdrückt die Anzeige von Dialogfeldern. Wenn das AB_NO_DIALOG-Flag nicht festgelegt ist, können die Adressbuchanbieter, die zum integrierten Adressbuch beitragen, den Benutzer zur Eingabe aller erforderlichen Informationen auffordern.
lppAdrBook
[out] Ein Zeiger auf einen Zeiger auf das Adressbuch.
Rückgabewert
S_OK
Das Adressbuch wurde erfolgreich geöffnet.
MAPI_W_ERRORS_RETURNED
Der Aufruf war erfolgreich, aber die Container eines oder mehrerer Adressbuchanbieter konnten nicht geöffnet werden. Wenn diese Warnung zurückgegeben wird, sollte der Aufruf als erfolgreich behandelt werden. Verwenden Sie zum Testen auf diese Warnung das Makro HR_FAILED . Weitere Informationen finden Sie unter Verwenden von Makros für die Fehlerbehandlung.
Hinweise
Die IMAPISession::OpenAddressBook-Methode öffnet das integrierte MAPI-Adressbuch, eine Sammlung der Container der obersten Ebene aller Adressbuchanbieter im Profil. Der im lppAdrBook-Parameter zurückgegebene Zeiger bietet weiteren Zugriff auf den Inhalt des Adressbuchs. Dadurch kann der Aufrufer Aufgaben wie das Öffnen einzelner Container, das Suchen von Messagingbenutzern und das Anzeigen allgemeiner Adressdialogfelder ausführen.
Hinweise für Aufrufer
OpenAddressBook gibt MAPI_W_ERRORS_RETURNED zurück, wenn ein oder mehrere Adressbuchanbieter im Profil nicht geladen werden können. Dieser Wert ist eine Warnung, kein Fehlerwert. behandeln Sie es wie S_OK. OpenAddressBook gibt immer einen gültigen Zeiger im lppAdrBook-Parameter zurück, unabhängig davon, wie viele der Adressbuchanbieter nicht geladen werden konnten. Daher müssen Sie die IUnknown::Release-Methode des Adressbuchs immer irgendwann aufrufen, bevor Sie sich abmelden.
Wenn OpenAddressBook MAPI_W_ERRORS_RETURNED zurückgibt, rufen Sie IMAPISession::GetLastError auf, um eine MAPIERROR-Struktur abzurufen, die Informationen zu den fehlerhaften Anbietern enthält. Es wird eine einzelne MAPIERROR-Struktur zurückgegeben, die informationen enthält, die von allen Anbietern bereitgestellt werden.
MFCMAPI-Referenz
Einen MFCMAP-Beispielcode finden Sie in der folgenden Tabelle.
Datei | Funktion | Kommentar |
---|---|---|
MAPIObjects.cpp |
CMapiObjects::GetAddrBook |
MFCMAPI verwendet die IMAPISession::OpenAddressBook-Methode , um das integrierte Adressbuch abzurufen. |