Trabalhando com Anexos e Objetos Incorporados

Trabalhando com Anexos

Anexos de e‑mail são arquivos enviados junto com uma mensagem de e‑mail. Esses arquivos podem incluir documentos, imagens, arquivos compactados e muito mais.

Em Aspose.Email para C++, os anexos são gerenciados através do Attachment classe, que funciona junto com o MailMessage classe. Você pode adicionar, remover, extrair ou exibir anexos programaticamente.

Nota: O tamanho máximo do anexo depende do servidor de e‑mail (por exemplo, o Gmail limita anexos a 10 MB).

Adicionando Anexos a um E‑mail

Para anexar um ou mais arquivos a uma mensagem de e‑mail, siga os passos abaixo:

  1. Crie uma instância do MailMessage classe.
  2. Criar Attachment objetos para cada arquivo.
  3. Adicione os anexos à mensagem usando AddAttachment().
  4. Salve a mensagem, se necessário.

Exemplo de código

Removendo Anexos de um E‑mail

Você pode remover facilmente anexos de uma mensagem usando o Remove() método do Anexos coleção.

O trecho de código a seguir demonstra como remover um anexo:

  1. Carregue ou crie um MailMessage instância.
  2. Adicione um ou mais anexos.
  3. Remova o anexo desejado.
  4. Opcionalmente, exiba os anexos restantes.

Exibindo Nomes de Arquivos de Anexos

Você pode percorrer todos os anexos e exibir seus nomes no console:

Extraindo Anexos de um E‑mail

Para extrair e salvar anexos de um arquivo de e‑mail existente, siga os passos abaixo:

  1. Carregue a mensagem usando o MailMessage classe.
  2. Itere sobre o Anexos coleção.
  3. Salve cada anexo no disco e, opcionalmente, exiba seu nome.

O trecho de código a seguir demonstra como extrair anexos de e‑mail:

|Extracted attachments in email| | :- | |todo:image_alt_text|

Lendo Descrição de Conteúdo do Anexo

Aspose.Email permite ler o cabeçalho Content-Description de um anexo para metadados adicionais.

Exemplo de código

Trabalhando com Objetos Incorporados

Um objeto incorporado é um arquivo criado em um aplicativo e incluído dentro de outro documento ou e‑mail. Por exemplo, uma planilha do Microsoft Excel pode ser incorporada em um documento Word, ou uma imagem pode ser incorporada diretamente no corpo de um e‑mail.

Quando um objeto é incorporado (não apenas anexado ou vinculado), ele mantém seu formato original e pode ser aberto ou editado em seu aplicativo nativo.

Incorporando Objetos em um E‑mail

Para incorporar uma imagem ou outro objeto em uma mensagem de e‑mail, use o LinkedResource classe junto com o MailMessage e AlternateView classes. Isso permite incluir imagens embutidas ou conteúdo multimídia que aparece diretamente no corpo da mensagem.

O exemplo de código a seguir demonstra como criar uma mensagem de e‑mail com conteúdo em texto simples e HTML que inclui uma imagem incorporada:

  1. Crie uma instância do MailMessage classe.
  2. Defina os campos de remetente, destinatário e assunto.
  3. Crie um corpo em texto simples usando AlternateView.
  4. Crie um corpo HTML contendo uma referência ao objeto incorporado usando o cid (Content-ID).
  5. Crie uma instância do LinkedResource classe e carregue o objeto.
  6. Defina um Content-ID para o recurso vinculado.
  7. Adicione o recurso vinculado e as visualizações alternativas à mensagem.
  8. Salve ou envie a mensagem de e‑mail.

Nota: > Você pode incorporar vários objetos, mas o tamanho máximo da mensagem é limitado pelo seu servidor de e‑mail. Por exemplo, o Gmail restringe o tamanho da mensagem a 10 MB.

Extraindo Objetos Incorporados de um E‑mail

Você também pode extrair objetos incorporados, como imagens ou arquivos, de uma mensagem de e‑mail existente. O processo é semelhante ao de extração de anexos:

  1. Crie uma instância do MailMessage classe.
  2. Carregue o arquivo de e‑mail no MailMessage instância.
  3. Itere pela coleção de anexos.
  4. Salve cada objeto incorporado no disco.
  5. Opcionalmente, exiba os nomes dos arquivos no console.

|Objetos incorporados extraídos no e‑mail| | :- | |todo:image_alt_text|