ver todos solo que muestra mensajes marque marcar los leídos leidos leido leer evitar cómo correos correo como buscar automáticamente aparece c# .net outlook

c# - todos - Obtenga correos no leídos de Outlook



outlook muestra mensajes sin leer (3)

Hay algunos ejemplos de cómo acceder a las carpetas de Outlook aquí , una de las cuales se refiere específicamente al correo no leído.

Editar: Hay un artículo de KB específicamente sobre el acceso a carpetas desde C #, ejemplos de programación que pueden hacer referencia a elementos y carpetas en Outlook utilizando Visual C # .NET

Para abrir la carpeta de otro usuario, use GetSharedDefaultFolder

¿Hay alguna manera de obtener todo el correo de una carpeta específica en mi aplicación?


Pasar por todos los elementos de una carpeta es una idea terrible, especialmente si está trabajando contra una tienda de Exchange en línea. Items.Find / FindNext o Items.Restrict es el camino a seguir.

Encuentra / Encuentra Siguiente:

OutLook.Items items = oFolder.Items; OutLook.MailItem mail = items.Find("[Unread] = true"); while (mail != null) { MessageBox.Show(mail.Subject); mail = items.FindNext(); }

Items.Restrict:

OutLook.Items items = oFolder.Items.Restict("[Unread] = true") foreach (OutLook.MailItem mail in items) { MessageBox.Show(mail.Subject); }


Mira este enlace La introducción a la Programación de Outlook explicará las cosas más claramente.

Podría recorrer los elementos de correo. Código de muestra

using System.Runtime.InteropServices; using OutLook = Microsoft.Office.Interop.Outlook; using Office = Microsoft.Office.Core; OutLook.Application oApp; OutLook._NameSpace oNS; OutLook.MAPIFolder oFolder; OutLook._Explorer oExp; oApp = new OutLook.Application(); oNS = (OutLook._NameSpace)oApp.GetNamespace("MAPI"); oFolder = oNS.GetDefaultFolder(OutLook.OlDefaultFolders.olFolderInbox); oExp = oFolder.GetExplorer(false); oNS.Logon(Missing.Value, Missing.Value, false, true); OutLook.Items items = oFolder.Items; foreach (OutLook.MailItem mail in items) { if (mail.UnRead == true) { } }

Editar: referencia otras carpetas

oFolder.Folders["Foldername"]

Código OutLook

Tareas comunes de Outlook