Obtener lista de mensajes de la carpeta de bandeja de entrada del buzón de Microsoft Exchange Server en Aspose.Email
Contents
[
Hide
]
Para utilizar objetos de automatización de Office para Microsoft Outlook, agregue referencias a las bibliotecas de Microsoft Office y Microsoft Office Interop para Outlook al proyecto. Microsoft Office Outlook también debe estar instalado en la máquina donde se ejecute el código.
VSTO
// Crear clase Application y obtener namespace
Outlook.Application outlook = new Outlook.Application();
Outlook.NameSpace ns = outlook.GetNamespace("Mapi");
object _missing = Type.Missing;
ns.Logon(_missing, _missing, false, true);
// Obtener información de la bandeja de entrada en objeto de tipo MAPIFolder
Outlook.MAPIFolder inbox = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
// Correos electrónicos no leídos
int unread = inbox.UnReadItemCount;
// Mostrar el asunto de los correos electrónicos en la carpeta de entrada
foreach (Outlook.MailItem mail in inbox.Items)
{
Console.WriteLine(mail.Subject);
}
Aspose.Email
Sin embargo, Microsoft Outlook no necesita estar instalado en la máquina donde se ejecute el código. Referencie el Aspose.Email.dll para construir y ejecutar el proyecto con éxito.
// Crear instancia de la clase ExchangeClient proporcionando credenciales
ExchangeClient client = new ExchangeClient("http://MachineName/exchange/Username",
"username", "password", "domain");
// Llamar al método ListMessages para listar la información de los mensajes de la bandeja de entrada
ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);
// Recorrer la colección para mostrar la información básica
foreach (ExchangeMessageInfo msgInfo in msgCollection)
{
Console.WriteLine("Asunto: " + msgInfo.Subject);
Console.WriteLine("De: " + msgInfo.From.ToString());
Console.WriteLine("Para: " + msgInfo.To.ToString());
Console.WriteLine("ID de mensaje: " + msgInfo.MessageId);
Console.WriteLine("URI única: " + msgInfo.UniqueUri);
Console.WriteLine("==================================");
}