Obtenir la liste des messages du dossier Boîte de réception d'une boîte aux lettres Microsoft Exchange Server dans Aspose.Email
Contents
[
Hide
]
Pour utiliser les objets d’automatisation Office pour Microsoft Outlook, ajoutez des références aux bibliothèques Microsoft Office et Microsoft Office Interop pour Outlook dans le projet. Microsoft Office Outlook doit également être installé sur la machine sur laquelle le code s’exécute.
VSTO
// Create Application class and get namespace
Outlook.Application outlook = new Outlook.Application();
Outlook.NameSpace ns = outlook.GetNamespace("Mapi");
object _missing = Type.Missing;
ns.Logon(_missing, _missing, false, true);
// Get Inbox information in objec of type MAPIFolder
Outlook.MAPIFolder inbox = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
// Unread emails
int unread = inbox.UnReadItemCount;
// Display the subject of emails in the Inbox folder
foreach (Outlook.MailItem mail in inbox.Items)
{
Console.WriteLine(mail.Subject);
}
Aspose.Email
Cependant, Microsoft Outlook n’a pas besoin d’être installé sur la machine où le code s’exécute. Référencez Aspose.Email.dll pour construire et exécuter le projet avec succès.
// Create instance of ExchangeClient class by giving credentials
ExchangeClient client = new ExchangeClient("http://MachineName/exchange/Username",
"username", "password", "domain");
// Call ListMessages method to list messages info from Inbox
ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);
// Loop through the collection to display the basic information
foreach (ExchangeMessageInfo msgInfo in msgCollection)
{
Console.WriteLine("Subject: " + msgInfo.Subject);
Console.WriteLine("From: " + msgInfo.From.ToString());
Console.WriteLine("To: " + msgInfo.To.ToString());
Console.WriteLine("Message ID: " + msgInfo.MessageId);
Console.WriteLine("Unique URI: " + msgInfo.UniqueUri);
Console.WriteLine("==================================");
}