Требование состоит в том, чтобы удалить вложения из электронной почты Outlook. Вот код: (! Странно)Удаление встроенных изображений из Outlook
internal void ClearAttachments()
{
Outlook.MailItem mailItem = Globals.ThisAddin.Application.ActiveInspector().CurrentItem as MailItem;
try
{
if (mailItem != null && mailItem.Attachments.Count >= 1)
{
for (int i = mailItem.Attachments.Count; i >= 1; i--)
{
mailItem.Attachments[i].Delete();
mailItem.Attachments.Remove(i);
}
}
}
catch (Exception e)
{
//log this if needed.
}
Он отлично работает для наиболее часто используемых файлов, за исключением «инлайн-изображения» он не идентифицирует их как вложение, если у меня меньше, чем 3 инлайн-изображения, но работает отлично если у меня есть встроенные изображения и другие файлы (например, txt), в этом случае, когда он удален. Outlook по-прежнему показывает прямоугольный блок (вид контейнера), в то время как изображение удаляется.
Как вложения представлены в разметке HTML? Начисляются ли они с использованием атрибута 'cid:' attribite или 64-битного кодирования? –
mailItem.HTMLBody свойство предлагает следующая: –
Вы должны получить correspoding прикрепленный файл изображения с 'PR_ATTACH_CONTENT_ID' (" HTTP: // схемы .microsoft.com/mapi/proptag/0x3712001E "), установленный в [email protected], как показывает разметка HTML. –