Sample code for 30+ languages & platforms
C#

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 C# Downloads

C#
bool success = 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.
Chilkat.BinData bdJpg = new Chilkat.BinData();
Chilkat.Http http = new Chilkat.Http();
success = http.QuickGetBd("https://www.chilkatsoft.com/images/starfish.jpg",bdJpg);
if (success == false) {
    Debug.WriteLine(http.LastErrorText);
    return;
}

Chilkat.MailMan mailman = new Chilkat.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.
Chilkat.Email email = new Chilkat.Email();
email.Subject = "HTML Email with Image";
email.From = "Dave <somebody@mydomain.com>";
email.AddTo("Chilkat","info@chilkatsoft.com");

string html = "<html><body><p>This is an HTML email with an embedded image.</p><p><img src=\"starfish.jpg\" /></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) {
    Debug.WriteLine(email.LastErrorText);
    return;
}

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

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

Debug.WriteLine("Success.");