Fonction de rappel MAPIREADMAIL (mapi.h)
[L’utilisation de cette fonction est déconseillée. Il peut être modifié ou indisponible dans les versions ultérieures de Windows.]
La fonction MAPIReadMail récupère un message à lire.
Syntaxe
MAPIREADMAIL Mapireadmail;
ULONG Mapireadmail(
[in] LHANDLE lhSession,
[in] ULONG_PTR ulUIParam,
[in] LPSTR lpszMessageID,
[in] FLAGS flFlags,
ULONG ulReserved,
lpMapiMessage *lppMessage
)
{...}
Paramètres
[in] lhSession
Gérer vers une session MAPI simple. La valeur du paramètre lhSession doit représenter une session valide ; il ne peut pas être égal à zéro.
[in] ulUIParam
Handle de fenêtre parente ou zéro, indiquant que si une boîte de dialogue est affichée, elle est modale de l’application. 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] lpszMessageID
Pointeur vers une chaîne d’identificateur de message pour le message à lire. La chaîne est allouée par l’appelant.
[in] flFlags
Masque de bits des indicateurs d’option. Les indicateurs suivants peuvent être définis.
Valeur | Signification |
---|---|
|
MAPIReadMail doit écrire le texte du message dans un fichier temporaire et l’ajouter en tant que première pièce jointe dans la liste des pièces jointes. |
|
MAPIReadMail doit lire uniquement l’en-tête de message. Les pièces jointes ne sont pas copiées dans des fichiers temporaires, et ni les noms de fichiers temporaires ni le texte du message n’est écrit. La définition de cet indicateur améliore les performances. |
|
MAPIReadMail ne marque pas le message comme lu. Le marquage d’un message comme lu affecte son apparence dans l’interface utilisateur et génère un accusé de réception de lecture. Si le système de messagerie ne prend pas en charge cet indicateur, MAPIReadMail marque toujours le message comme lu. Si MAPIReadMail rencontre une erreur, le message n’est pas lu. |
|
MAPIReadMail ne doit pas copier les pièces jointes de fichiers, mais doit écrire le texte du message dans la structure MapiMessage . MAPIReadMail ignore cet indicateur si l’application appelante a défini l’indicateur MAPI_ENVELOPE_ONLY. La définition de l’indicateur MAPI_SUPPRESS_ATTACH améliore les performances. |
ulReserved
Réservés au; doit être égal à zéro.
lppMessage
Valeur retournée
Cette fonction retourne l’une des valeurs suivantes.
Code de retour | Description |
---|---|
|
Impossible d’écrire une pièce jointe dans un fichier temporaire. Vérifiez les autorisations d’annuaire. |
|
Une pièce jointe n’a pas pu être écrite dans un fichier temporaire, car il n’y avait pas suffisamment d’espace sur le disque. |
|
Une ou plusieurs erreurs non spécifiées se sont produites lors de la lecture du message. |
|
La mémoire était insuffisante pour lire le message. |
|
Un identificateur de message non valide a été passé dans le paramètre lpszMessageID . |
|
Un handle de session non valide a été passé dans le paramètre lhSession . Aucun message n’a été récupéré. |
|
Le message contient trop de pièces jointes. Impossible de lire le message. |
|
Il y avait trop de destinataires du message. Impossible de lire le message. |
|
L’appel a réussi et le message a été lu. |
Notes
La fonction MAPIReadMail retourne un message, en cassant le contenu du message dans les mêmes paramètres et structures que ceux utilisés dans la fonction MAPISendMail . MAPIReadMail remplit un bloc de mémoire avec la structure MapiMessage contenant des éléments de message, tels que l’objet, la classe de message, l’heure de remise et l’expéditeur. Les pièces jointes sont enregistrées dans des fichiers temporaires et les noms sont retournés à l’appelant dans la structure de message. Les destinataires, les pièces jointes et le contenu sont copiés à partir du message avant que MAPIReadMail ne retourne à l’appelant, de sorte que les modifications apportées ultérieurement aux fichiers n’affectent pas le contenu du message.
Un indicateur est fourni pour spécifier que seules les informations d’enveloppe doivent être retournées à partir de l’appel. Un autre indicateur (dans la structure MapiMessage ) spécifie si le message est marqué comme envoyé ou non envoyé.
L’appelant est chargé de libérer la structure MapiMessage en appelant la fonction MAPIFreeBuffer et en supprimant tous les fichiers associés aux pièces jointes incluses dans le message.
Avant d’appeler MAPIReadMail, utilisez la fonction MAPIFindNext pour vérifier que le message à lire est celui que vous souhaitez lire. Étant donné que les identificateurs de message sont spécifiques au système et opaques et peuvent être invalidés à tout moment, MAPIReadMail considère qu’un identificateur de message est valide uniquement pour la session MAPI simple en cours.
Spécifications
Plateforme cible | Windows |
En-tête | mapi.h |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour