Guardar mensajes del buzón del servidor Exchange usando WebDav

Este artículo muestra cómo obtener mensajes de un buzón de Exchange Server y guardarlos en disco en formatos EML y MSG.

Guardar mensajes de un buzón de Exchange Server a EML

Para obtener mensajes y guardarlos en formato EML:

  1. Cree una instancia de la ExchangeClient clase.
  2. Proporcione el nombre del servidor, el nombre de usuario, la contraseña y el dominio.
  3. Llame al ExchangeClient.listMessages() método para obtener una instancia del ExchangeMessagesInfoCollection colección.
  4. Iterar a través del ExchangeMessagesInfoCollection colección para obtener el URI único de cada mensaje.
  5. Llame al ExchangeClient.saveMessage() método y pase el URI único como parámetro.
  6. Proporcione un saveMessage() método con una ruta a donde desea guardar el archivo.  

Guardar mensajes en un OutputStream

En lugar de guardar archivos EML en el disco, es posible guardarlos en un OutputStream. Esto es útil cuando desea guardar el flujo en alguna ubicación de almacenamiento como una base de datos. Una vez que el flujo se haya guardado en una base de datos, puede recargar el archivo EML en el MailMessage clase.

Los fragmentos de código a continuación guardan mensajes de un buzón de Exchange Server en un flujo de memoria.

Guardar mensajes en formato MSG

El ExchangeClient.saveMessage() el método puede guardar directamente el mensaje en formato EML. Para guardar los mensajes en formato MSG, primero, llame al ExchangeClient.fetchMessage() método que devuelve una instancia de MailMessage clase. Luego llame al MailMessage.save() método para guardar el mensaje en MSG.

El fragmento de código a continuación obtiene mensajes de un buzón de Exchange Server y los guarda en formato MSG.