Partager via


Fonction SHSetUnreadMailCountA (shellapi.h)

Stocke le nombre de messages non lus de l’utilisateur actuel pour un compte de messagerie spécifié dans le Registre.

Syntaxe

HRESULT SHSetUnreadMailCountA(
  [in] LPCSTR pszMailAddress,
       DWORD  dwCount,
  [in] LPCSTR pszShellExecuteCommand
);

Paramètres

[in] pszMailAddress

Type : LPCTSTR

Pointeur vers une chaîne en Unicode qui contient l’adresse e-mail complète de l’utilisateur actuel.

dwCount

Type : DWORD

Nombre de messages non lus.

[in] pszShellExecuteCommand

Type : LPCTSTR

Pointeur vers une chaîne en Unicode qui contient le texte intégral d’une commande qui peut être passée à ShellExecute. Cette commande doit démarrer l’application de messagerie qui possède le compte référencé par pszMailAddress.

Valeur retournée

Type : HRESULT

HRESULT, qui inclut les valeurs possibles suivantes.

Code de retour Description
S_OK
L'appel s'est terminé avec succès.
E_OUTOFMEMORY
Mémoire disponible insuffisante.
E_INVALIDARG
Argument de chaîne non valide dans les paramètres pszMailAddress ou pszShellExecuteCommand .

Remarques

Lorsque cette fonction met à jour le Registre, la nouvelle entrée de Registre est automatiquement marquée avec l’heure et la date actuelles.

Si cette fonction est appelée par différents éditeurs de logiciels indépendants (ISV) qui spécifient le même nom d’e-mail, seul le dernier appel est enregistré. Autrement dit, les appels à cette fonction remplacent toute valeur précédemment enregistrée pour la même adresse e-mail, même si les appels sont effectués par des éditeurs de logiciels indépendants différents.

Il est recommandé de définir le nombre de messages non lus uniquement pour la boîte de réception main du compte d’utilisateurs. Le courrier dans les sous-dossiers tels que les brouillons ou les éléments supprimés doit être ignoré.

Il est important que les clients de messagerie ne définissent pas le nombre de messages non lus sur 0 à la sortie de l’application, car cela entraîne la notification erronée du nombre de messages non lus sous la forme 0.

Étant donné que cette fonction utilise HKEY_CURRENT_USER, elle ne doit pas être appelée par un processus système empruntant l’identité d’un utilisateur.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shellapi.h
Bibliothèque Shell32.lib
DLL Shell32.dll (version 5.60 ou ultérieure)