CID#
CID é uma maneira especial de inserir imagens ou outros arquivos de mídia diretamente no corpo do e-mail, para que sejam exibidos imediatamente, sem a necessidade de baixá-los separadamente.
- No e-mail, as imagens são inseridas através da tag
<img src='cid:ID_único'>. - O ID único (Content-ID) vincula a imagem a essa tag.
- No banco de dados, esses IDs e as próprias imagens são armazenados.
- Ao exibir o e-mail, o programa procura as imagens por esses IDs e as mostra.
Essa construção funciona para páginas da web, no entanto, o Outlook pode não exibir essas imagens. Isso é especialmente relevante para o Office 2019.
Configurações de conexão com o Exchange#
$exchangeVersion = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2016
$service = New-Object Microsoft.Exchange.WebServices.Data.ExchangeService($exchangeVersion)
$service.Credentials = New-Object System.Net.NetworkCredential($ , $ )
$service.Url = "https:// / /Exchange.asmx"
Criação do e-mail#
$email = New-Object Microsoft.Exchange.WebServices.Data.EmailMessage($service)
$email.Subject = $subject
$email.Body = New-Object Microsoft.Exchange.WebServices.Data.MessageBody(
[Microsoft.Exchange.WebServices.Data.BodyType]::HTML,
"<html><body><p style = `"font-size: 15px; font-family: Calibri;`">${$header}<br>${$link}<br></p><img src='cid:MyImage'>$($ )</body></html>"
)
$emailAddresses = $Row.emails -split ';' | ForEach-Object { $_.Trim() }
foreach ($address in $emailAddresses) {
$email.ToRecipients.Add($address)
}
Adição de anexo com ContentId#
$filePath = $
$attachment = $email.Attachments.AddFileAttachment($filePath)
$attachment.ContentId = "MyImage"
$attachment.IsInline = $true
Envio do e-mail#
$email.SendAndSaveCopy()
.png)