Sample code for 30+ languages & platforms
Visual FoxPro

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 Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loBdJpg
LOCAL loHttp
LOCAL loMailman
LOCAL loEmail
LOCAL lcHtml

lnSuccess = 0

* 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.
loBdJpg = CreateObject('Chilkat.BinData')
loHttp = CreateObject('Chilkat.Http')
lnSuccess = loHttp.QuickGetBd("https://www.chilkatsoft.com/images/starfish.jpg",loBdJpg)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loBdJpg
    RELEASE loHttp
    CANCEL
ENDIF

loMailman = CreateObject('Chilkat.MailMan')

* Use your SMTP server..
loMailman.SmtpHost = "smtp.yourserver.com"
loMailman.SmtpPort = 587
loMailman.StartTLS = 1

* Set the SMTP login/password
loMailman.SmtpUsername = "my_login"
loMailman.SmtpPassword = "my_password"

* Create an HTML email.
loEmail = CreateObject('Chilkat.Email')
loEmail.Subject = "HTML Email with Image"
loEmail.From = "Dave <somebody@mydomain.com>"
loEmail.AddTo("Chilkat","info@chilkatsoft.com")

lcHtml = '<html><body><p>This is an HTML email with an embedded image.</p><p><img src="starfish.jpg" /></p></body></html>'
loEmail.SetHtmlBody(lcHtml)

* Note: The "starfish.jpg" here must match the name in the "img" tag's "src" attribute in the HTML above.
lnSuccess = loEmail.AddRelatedBd2(loBdJpg,"starfish.jpg")
IF (lnSuccess = 0) THEN
    ? loEmail.LastErrorText
    RELEASE loBdJpg
    RELEASE loHttp
    RELEASE loMailman
    RELEASE loEmail
    CANCEL
ENDIF

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

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

? "Success."

RELEASE loBdJpg
RELEASE loHttp
RELEASE loMailman
RELEASE loEmail