2016-07-04 202 views
0

我有一个文本文件(的htmlText包含HTML邮件的群发邮件发送出去。该文本被标记使用HTML代码我相似图片嵌入式图像

<img src='cid:imgheader'/> 

我跟随例如例如如何使用LinkedResource在我的VB代码像

Dim imgHeader As String = "header.jpg" 
Dim lnkHeader As LinkedResource = New LinkedResource(imgHeader) 
lnkHeader.ContentId = "imgHeader" 
Dim av As AlternateView = AlternateView.CreateAlternateViewFromString(htmlText, Nothing, MediaTypeNames.Text.Html) 

av.LinkedResources.Add(lnkHeader) 

,但之后,图像被作为附件接收,而不是嵌入预期。我在想什么或做错了电子邮件的主体?我图像存储在作为控制台ap的程序的可执行路径中折叠。

回答

0

我可以看到第一个问题是,你传递只是文件名的LinkedResource它需要图像的实际位置和只是文件名。

给这个一杆....

Dim imageLink As New LinkedResource(PATHTOIMAGE) 
imageLink.ContentId = "myImage" 
Dim altView As AlternateView = AlternateView.CreateAlternateViewFromString("<html><body><img src=cid:myImage/><br>" & htmlText & "</body></html>", Nothing, MediaTypeNames.Text.Html) 
altView.LinkedResources.Add(imageLink) 

其附加到电子邮件正文...

YOURMAILMESSAGEOBJECT.AlternateViews.Add(altView) 
YOURMAILMESSAGEOBJECT.IsBodyHtml = True 
+0

我按照您的指示添加了图像的物理路径,包括LinkedResource方法中的图像名称,但我仍未在电子邮件中获取任何图像发送。它在电子邮件中显示为破碎的图像。该映像存储在运行控制台应用程序的服务器上。当我检查Web邮件显示中的html元素时,它将http://前缀为cid:myimage – user3531867

+0

我正在使用的所有图像都显示为附件,并未嵌入HTML邮件中。 – user3531867

+0

有没有其他的建议,因为我是我的智慧结局试图解决这个问题。 – user3531867

0

我在几个平台,包括Outlook和各种网页打开电子邮件邮件产品具有相同的结果。我读到我可能在我的电子邮件标题中缺少某些内容。我正在追寻这条路线,看看是否可以解决问题