Я кодирую надстройку Outlook, написанную с использованием Visual Studio и VSTO, которая может автоматически изменять формат исходящих писем на HTML:
введите описание изображения здесь
Я бы сделал следующее:
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
//Add event handler for when emails are sent out
this.Application.ItemSend += new Microsoft.Office.Interop.Outlook.ApplicationEvents_11_ItemSendEventHandler(onItemSend);
}
private void onItemSend(object Item, ref bool Cancel)
{
//Called when email is sent
Outlook.MailItem objMailItem = (Outlook.MailItem)Item;
//Set message format as HTML
objMailItem.BodyFormat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatHTML;
}
Я заметил, что мой onItemSend
вызывается, и если исходное электронное письмо, которое отправляется, было составлено как обычное -text, это электронное письмо по-прежнему приходит в пункт назначения в виде обычного текста, несмотря на мои изменения там. Я даже попытался прочитать objMailItem.BodyFormat
обратно, и там написано olFormatHTML
.
Что я делаю не так?