我正在为outlook 2007创建一个插件,它将表情符号嵌入到电子邮件正文中。
我使用的方法如下:
if (!string.IsNullOrEmpty(mail.HTMLBody) && mail.HTMLBody.ToLower().Contains("</body>"))
{
int mailBodyLength;
if (mail.Body == null)
{
mailBodyLength = 0;
}
else
{
mailBodyLength = mail.Body.Length;
}
//Get Image + Link
Image imagePath = image;
object linkAddress = "http://www.pentavida.cl";
//CONTENT-ID
const string SchemaPR_ATTACH_CONTENT_ID = @"http://schemas.microsoft.com/mapi/proptag/0x3712001E";
string contentID = Guid.NewGuid().ToString();
//Attach image
mail.Attachments.Add(imagePath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, mailBodyLength, Type.Missing);
mail.Attachments[mail.Attachments.Count].PropertyAccessor.SetProperties(SchemaPR_ATTACH_CONTENT_ID, contentID);
//Create and add banner
string banner = string.Format(@"<br/><a href=""{0}"" ><img src=""cid:{1}"" ></a></body>", linkAddress, contentID);
mail.HTMLBody = mail.HTMLBody.Replace("</body>", banner);
mail.Save();
}
在这一行:mail.Attachments.Add(imagePath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, mailBodyLength, Type.Missing);
我正在添加一个图像对象(imagePath),但它抛出一个异常,当我在方法中放置一个完整的图像路径时,它工作,现在我正在通过从我的资源文件夹中获取的图像。我假设该方法失败,因为它需要图像的路径而不是Image对象。如何从此Image对象中获取图像路径名称以传递给此方法?
我有一个从资源文件夹中获取的图像,我需要该图像的路径。我如何走这条路?
Image imagePath = image;
我需要图像路径,因为我将图像添加到Outlook中的新邮件中。
但是当我通过Image对象时,它抛出了一个异常:
Member not found. (Exception from HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))
但传递一个字符串可以正常工作。
提前感谢。