Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[L’utilisation de cette fonction est déconseillée. Il peut être modifié ou indisponible dans les versions ultérieures de Windows.]
La fonction MAPIAddress crée ou modifie un ensemble d’entrées de liste d’adresses.
Syntaxe
MAPIADDRESS Mapiaddress;
ULONG Mapiaddress(
[in] LHANDLE lhSession,
[in] ULONG_PTR ulUIParam,
[in] LPSTR lpszCaption,
[in] ULONG nEditFields,
[in] LPSTR lpszLabels,
[in] ULONG nRecips,
[in] lpMapiRecipDesc lpRecips,
[in] FLAGS flFlags,
ULONG ulReserved,
[out] LPULONG lpnNewRecips,
lpMapiRecipDesc *lppNewRecips
)
{...}
Paramètres
[in] lhSession
Handle de session qui représente une session MAPI simple ou zéro. Si la valeur du paramètre lhSession est zéro, MAPI se connecte à l’utilisateur et crée une session qui existe uniquement pendant la durée de l’appel. Cette session temporaire peut être une session partagée existante ou une nouvelle. Si nécessaire, une boîte de dialogue d’ouverture de session s’affiche.
[in] ulUIParam
Poignée de fenêtre parente ou zéro, indiquant que si une boîte de dialogue s’affiche, il s’agit d’une application modale. Si le paramètre ulUIParam contient un handle de fenêtre parent, il est de type HWND (cast en ULONG_PTR). Si aucune boîte de dialogue n’est affichée pendant l’appel, ulUIParam est ignoré.
[in] lpszCaption
Pointeur vers le légende pour la boîte de dialogue de liste d’adresses, NULL ou une chaîne vide. Lorsque le paramètre lpszCaption a la valeur NULL ou pointe vers une chaîne vide, MAPIAddress utilise le légende par défaut « Carnet d’adresses ».
[in] nEditFields
Nombre de contrôles de modification qui doivent être présents dans la liste d’adresses. Les valeurs 0 à 4 sont valides. Si la valeur du paramètre nEditFields est 4, chaque classe de destinataire prise en charge par le système de messagerie sous-jacent possède un contrôle d’édition. Si la valeur de nEditFields est zéro, seule la navigation dans la liste d’adresses est possible. Les valeurs de 1, 2 ou 3 contrôlent le nombre de contrôles de modification présents. Toutefois, si le nombre de classes de destinataires dans le tableau pointé vers le paramètre lpRecips est supérieur à la valeur de nEditFields, le nombre de classes dans lpRecips est utilisé pour indiquer le nombre de contrôles d’édition au lieu de la valeur de nEditFields. Si la valeur de nEditFields est 1 et que plusieurs types d’entrée existent dans lpRecips, le paramètre lpszLabels est ignoré. Les entrées sélectionnées pour les différents contrôles sont différenciées par le membre ulRecipClass dans la structure de destinataire retournée.
[in] lpszLabels
Pointeur vers une chaîne à utiliser comme étiquette de contrôle de modification dans la boîte de dialogue liste d’adresses. Lorsque le paramètre nEditFields est défini sur une valeur autre que 1, le paramètre lpszLabels est ignoré et doit avoir la valeur NULL ou pointer vers une chaîne vide. En outre, si l’appelant a besoin de l’étiquette de contrôle par défaut « À », lpszLabels doit avoir la valeur NULL ou pointer vers une chaîne vide.
[in] nRecips
Nombre d’entrées dans le tableau indiqué par le paramètre lpRecips . Si la valeur du paramètre nRecips est zéro, lpRecips est ignoré.
[in] lpRecips
Pointeur vers un tableau de structures MapiRecipDesc définissant les entrées de destinataire initiales à utiliser pour remplir la boîte de dialogue de liste d’adresses. Les entrées n’ont pas besoin d’être regroupées par classe de destinataire ; ils sont différenciés par les valeurs des membres ulRecipClass des structures MapiRecipDesc dans le tableau. Si le nombre de différentes classes de destinataires est supérieur à la valeur indiquée par le paramètre nEditFields , les paramètres nEditFields et lpszLabels sont ignorés .
[in] flFlags
Masque de bits des indicateurs d’option. Les indicateurs suivants peuvent être définis.
ulReserved
Réservés au; doit être égal à zéro.
[out] lpnNewRecips
Pointeur vers le nombre d’entrées dans le tableau de sortie du destinataire lppNewRecips . Si la valeur du paramètre lpnNewRecips est zéro, le paramètre lppNewRecips est ignoré.
lppNewRecips
Valeur retournée
Cette fonction retourne l’une des valeurs suivantes.
| Code de retour | Description |
|---|---|
|
Une ou plusieurs erreurs non spécifiées se sont produites lors de l’adressage du message. Aucune liste d’entrées de destinataire n’a été retournée. |
|
La mémoire était insuffisante pour continuer. Aucune liste d’entrées de destinataire n’a été retournée. |
|
La valeur du paramètre nEditFields se trouvait en dehors de la plage de 0 à 4. Aucune liste d’entrées de destinataire n’a été retournée. |
|
Un ou plusieurs des destinataires de la liste d’adresses n’étaient pas valides. Aucune liste d’entrées de destinataire n’a été retournée. |
|
Un handle de session non valide a été utilisé pour le paramètre lhSession . Aucune liste d’entrées de destinataire n’a été retournée. |
|
Il n’y avait pas d’ouverture de session par défaut et l’utilisateur n’a pas réussi à se connecter lorsque la boîte de dialogue d’ouverture de session s’affichait. Aucune liste d’entrées de destinataire n’a été retournée. |
|
L’opération n’était pas prise en charge par le système de messagerie sous-jacent. |
|
L’utilisateur a annulé l’une des boîtes de dialogue. Aucune liste d’entrées de destinataire n’a été retournée. |
|
L’appel a réussi et une liste d’entrées de destinataire a été retournée. |
Notes
La fonction MAPIAddress affiche une boîte de dialogue de liste d’adresses standard pour afficher un ensemble initial de zéro ou plusieurs destinataires. L’utilisateur peut choisir de nouvelles entrées à ajouter à l’ensemble ou apporter des modifications aux entrées existantes. Cette boîte de dialogue ne peut pas être supprimée, mais l’appelant peut définir des caractéristiques de boîte de dialogue. L’ensemble modifié de destinataires est retourné à l’appelant.
Avant que MAPIAddress n’écrive des informations de destinataire nouvelles ou modifiées, il doit allouer de la mémoire pour le tableau de structure qui contiendra les informations. La mémoire est également allouée dans le cadre du préchargement du carnet d’adresses, que les données de destinataire nouvelles ou modifiées soient écrites. Les applications clientes doivent appeler la fonction MAPIFreeBuffer pour libérer cette mémoire après le retour de MAPIAddress . Si une erreur se produit, aucune mémoire n’a été allouée et les clients n’ont pas besoin d’appeler MAPIFreeBuffer.
Spécifications
| Plateforme cible | Windows |
| En-tête | mapi.h |