为邮件的正文和附件指定 Internet 编码方案
本主题演示如何使用 MAPI 属性 PidTagInternetMailOverrideFormat 和 Microsoft Outlook 对象模型为 Exchange Internet 邮件服务指定 Internet 编码方案, (IMS) 对邮件项目的正文和附件进行编码。
Visual C# 中的以下代码示例演示如何使用其 MAPI proptag 命名空间引用 PidTagInternetMailOverrideFormat ,并使用 Outlook 对象模型的 PropertyAccessor 对象将 MIME 指定为邮件的 Internet 编码方案。 PidTagInternetMailOverrideFormat 引用为:
https://schemas.microsoft.com/mapi/proptag/0x59020003
其中 0x59020003
是 PidTagInternetMailOverrideFormat 的 proptag。
private void SendMail_Click()
{
Outlook.NameSpace objSession;
Outlook.MailItem objMailItem;
Outlook.Recipient objRecipient;
Outlook.PropertyAccessor oPA;
string Recipient, MsgSubject, ImageFile, TextFile, FileLocation, PropName;
int EncodingFlag;
//Modify the following to appropriate values.
Recipient = "someone@example.com";
EncodingFlag = 1; //Use MIME encoding
MsgSubject = "Test Encoding";
ImageFile = "garden.jpg";
TextFile = "mytext.txt";
FileLocation = "c:\\";
objSession = Application.GetNamespace("MAPI");
objSession.Logon(null, null, true, null);
objMailItem = Application.CreateItem(
Outlook.OlItemType.olMailItem) as Outlook.MailItem;
objMailItem.Subject = MsgSubject;
objMailItem.Body = "body";
objMailItem.Attachments.Add(FileLocation + TextFile,
Outlook.OlAttachmentType.olByValue, 1, TextFile);
objMailItem.Attachments.Add(FileLocation + ImageFile,
Outlook.OlAttachmentType.olByValue, 1, ImageFile);
objRecipient = objMailItem.Recipients.Add(Recipient);
objRecipient.Resolve();
PropName = "https://schemas.microsoft.com/mapi/proptag/0x59020003";
oPA = objMailItem.PropertyAccessor;
oPA.SetProperty(PropName, EncodingFlag);
objMailItem.Send();
objSession.Logoff();
}
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。