Sample code for 30+ languages & platforms
B4X

Send HTML Email with Image Downloaded from URL

Demonstrates how to compose an HTML email with an embedded image where the image data is downloaded from a URL.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

'  This example requires the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

'  First download the image we'll be adding to the HTML "img" tag.
Dim bdJpg As ChilkatBinData
bdJpg.Initialize
Dim http As ChilkatHttp
http.Initialize("http")
success = http.QuickGetBd("https://www.chilkatsoft.com/images/starfish.jpg", bdJpg)
If success = False Then
    Log(http.LastErrorText)
    Return
End If


Dim mailman As ChilkatMailMan
mailman.Initialize("mailman")

'  Use your SMTP server..
mailman.SmtpHost = "smtp.yourserver.com"
mailman.SmtpPort = 587
mailman.StartTLS = True

'  Set the SMTP login/password
mailman.SmtpUsername = "my_login"
mailman.SmtpPassword = "my_password"

'  Create an HTML email.
Dim email As ChilkatEmail
email.Initialize
email.Subject = "HTML Email with Image"
email.From = "Dave <somebody@mydomain.com>"
email.AddTo("Chilkat", "info@chilkatsoft.com")

Dim html As String = "<html><body><p>This is an HTML email with an embedded image.</p><p><img src=" & Chr(34) & "starfish.jpg" & Chr(34) & " /></p></body></html>"
email.SetHtmlBody(html)

'  Note: The "starfish.jpg" here must match the name in the "img" tag's "src" attribute in the HTML above.
success = email.AddRelatedBd2(bdJpg, "starfish.jpg")
If success = False Then
    Log(email.LastErrorText)
    Return
End If


email.SaveEml("qa_output/out.eml")

'  success = mailman.SendEmail(email);
'  if (success == ckfalse) {
'      println mailman.LastErrorText;
'      return;
'  }
'  
'  ignore = mailman.CloseSmtpConnection();

Log("Success.")