Так что у меня было много исследований на эту тему.Был COM-подход, я потратил немало времени на его реализацию, он включал IMessage, IConverterSession, некоторые размышления и тому подобное.Большинство ответов, которые я нашел, предполагали, что это не может быть использовано в C #, но мне кажется, что есть способ.В любом случае, закрытие, которое я когда-либо получал, состояло в том, чтобы получить пустой объект IStream (length = 0).Еще одна вещь, которая заставила меня полностью отказаться от этого метода, заключалась в том, что некоторые отчеты могли не работать в 64-битной версии Outlook 2010.
Более очевидным способом было просто получить MailItem из внешнего вида и начать сборку.сообщение MIME из этого.Это кажется очень утомительным и подверженным ошибкам + оно дополнительно раздувает мой код с помощью функции синтаксического анализа / построения MIME.
Я думал, есть ли другой способ, оставить способ оставить существующие классы .NET, чтобы легко повернутьмой почтовый элемент Outlook в сообщение MIME.Я думал, что классы MailMessage / SmtpClient могут помочь.Итак, я сделал это:
SmtpClient client = new SmtpClient();
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
С этого момента я могу получать сообщение (я указываю новый каталог для каждого сообщения, так как я не могу иметь их имена).
Итак, прежде чем углубляться в размышления, чтобы посмотреть, смогу ли я получить содержимое без фактического сохранения файла, есть ли какой-либо другой встроенный способ в .Net для создания MIME-сообщений из отдельных полей (от, до,тема, тело, вложения), я не настаиваю на методе, который сразу превратит MailItem в MIME Message (хотя это будет хорошо, если есть), но, по крайней мере, я могу установить свойства для некоторого объекта и получитьпостроенное сообщение из этого позже?
Большое спасибо!