Partager via


IProviderAdmin::OpenProfileSection

S’applique à : Outlook 2013 | Outlook 2016

Ouvre une section de profil à partir du profil actuel et retourne un pointeur IProfSect pour un accès supplémentaire.

HRESULT OpenProfileSection(
  LPMAPIUID lpUID,
  LPCIID lpInterface,
  ULONG ulFlags,
  LPPROFSECT FAR * lppProfSect
);

Paramètres

lpUID

[in] Pointeur vers la structure MAPIUID qui contient l’identificateur unique de la section de profil à ouvrir. Les clients ne doivent pas passer null pour le paramètre lpUID . Les fournisseurs de services peuvent passer null pour récupérer le MAPIUID lorsqu’ils appellent à partir de leurs fonctions de point d’entrée de service de messagerie.

lpInterface

[in] Pointeur vers l’identificateur d’interface (IID) qui représente l’interface à utiliser pour accéder à la section de profil. La transmission de la valeur NULL entraîne le retour de l’interface standard (IProfSect) de la section de profil.

ulFlags

[in] Masque de bits d’indicateurs qui contrôle la façon dont la section de profil est ouverte. Les indicateurs suivants peuvent être définis :

MAPI_DEFERRED_ERRORS

Permet à OpenProfileSection de retourner avec succès, éventuellement avant que la section de profil ne soit entièrement disponible pour l’appelant. Si la section de profil n’est pas disponible, un appel ultérieur peut générer une erreur.

MAPI_MODIFY

Demande l’autorisation de lecture/écriture. Par défaut, les objets sont ouverts avec une autorisation en lecture seule, et les appelants ne doivent pas travailler sur l’hypothèse que l’autorisation de lecture/écriture a été accordée. Les clients ne sont pas autorisés à accéder en lecture/écriture aux sections du fournisseur du profil.

MAPI_FORCE_ACCESS

Autorise l’accès à toutes les sections de profil, même celles appartenant à des fournisseurs de services individuels.

lppProfSect

[out] Pointeur vers un pointeur vers la section du profil.

Valeur renvoyée

S_OK

La section profil a été ouverte avec succès.

MAPI_E_NO_ACCESS

Une tentative a été effectuée pour modifier une section de profil en lecture seule ou pour accéder à un objet pour lequel l’utilisateur ne dispose pas des autorisations suffisantes.

MAPI_E_NOT_FOUND

La section de profil demandé n’existe pas.

Remarques

La méthode IProviderAdmin ::OpenProfileSection ouvre une section de profil, ce qui permet à l’appelant de lire les informations à partir du profil actif et éventuellement d’écrire des informations dans le profil actif.

Les clients ne peuvent pas ouvrir des sections de profil qui appartiennent à des fournisseurs à l’aide de la méthode OpenProfileSection .

Plusieurs clients ou fournisseurs de services peuvent ouvrir simultanément une section de profil avec une autorisation en lecture seule. Toutefois, lorsqu’une section de profil est ouverte avec une autorisation de lecture/écriture, aucun autre appel ne peut être effectué pour ouvrir la section, quel que soit le type d’accès. Si une section de profil est ouverte avec une autorisation en lecture seule, un appel ultérieur pour demander une autorisation de lecture/écriture échoue avec MAPI_E_NO_ACCESS. De même, si une section est ouverte avec une autorisation de lecture/écriture, un appel ultérieur pour demander une autorisation en lecture seule échoue également.

Remarques pour les appelants

Si vous demandez à OpenProfileSection d’ouvrir une section de profil inexistante en transmettant MAPI_MODIFY dans ulFlags et un MAPIUID inconnu dans lpUID, la section de profil est créée.

Si vous demandez à OpenProfileSection d’ouvrir une section inexistante avec l’autorisation en lecture seule, elle retourne MAPI_E_NOT_FOUND.

Référence MFCMAPI

Pour voir un exemple de code MFCMAPI, consultez le tableau suivant.

Fichier Fonction Commentaire
MAPIProfileFunctions.cpp
OpenProfileSection
MFCMAPI utilise la méthode IProviderAdmin ::OpenProfileSection pour ouvrir une section de profil à partir du profil actuel.

Voir aussi

IMAPIProp : IUnknown

IProfSect : IMAPIProp

MAPIUID

IProviderAdmin : IUnknown

MFCMAPI comme un exemple de Code