Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(VB.NET UWP/WinRT) Convert HTML Web Page to Email and SendConverts an HTML page at a URL into an email with embedded images and sends it.
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim mailman As New Chilkat.MailMan ' The MHT component can be used to convert an HTML page ' from a URL, file, or in-memory HTML into an email ' with embedded images and style sheets. Dim mht As New Chilkat.Mht Dim email As New Chilkat.Email ' There are two ways of embedding images in emails: with CIDs ' and without. When using CIDs, the IMG SRC attributes use ' urls that begin with "cid:" and the corresponding image ' embedded within the email includes a Content-ID header field. ' When not using CIDs, the IMG SRC attribute can have a URL, ' path, etc. and the corresponding image embedded within ' the email has a matching Content-Location header field. ' When testing with GMail, if CIDs are used the email will ' be displayed with images blocked (by default) unless ' the user allows them to be displayed. Without CIDs, ' the images are automatically displayed. ' When testing with Eudora, Mozilla Thunderbird, and Outlook Express, ' embedded images display correctly with our without CIDs. ' When testing with Yahoo! Mail, embedded images display OK. ' However, the Yahoo! Mail user has the option of blocking ' images. If this is turned on, the CID images will still ' display correctly even though images are blocked. Why? ' It's because when viewing the email there is no external ' HTTP request to fetch an image. Therefore, a spammer ' cannot get an indication that you've read the email. ' However, if CIDs are not used, the images are blocked by ' any Yahoo! Mail user that has image blocking turned on -- ' even though the images are embedded. ' I haven't tested Hotmail yet... ' Regardless, there is no perfect solution. If CIDs are used, ' GMail users may block your embedded images, if CIDs are not ' used, Yahoo! Mail users may block your embedded images. ' I recommend setting using CIDs. This is what Mozilla Thunderbird ' does by default, and it's the more clear an unambiguous way ' to indicate that images are indeed embedded. mht.UseCids = True Dim emlStr As String = Await mht.GetEMLAsync("http://www.bonairefishing.com/") If (mht.LastMethodSuccess <> True) Then Debug.WriteLine(mht.LastErrorText) Exit Sub End If Dim success As Boolean = email.SetFromMimeText(emlStr) If (success <> True) Then Debug.WriteLine(email.LastErrorText) Exit Sub End If email.Subject = "Test HTML email" ' This example is tested in: ' Outlook 2000, Eudora 7, Mozilla Thunderbird 1.5.0.9, Outlook Express 6, GMail, Yahoo Mail success = email.AddTo("Chilkat Support","support@chilkatsoft.com") ' Note: Chilkat does not regularly check our GMail and Yahoo ' email accounts. Please send support email to support@chilkatsoft.com success = email.AddTo("Chilkat on Yahoo","chilkat_software@yahoo.com") success = email.AddTo("Chilkat on GMail","chilkat.support@gmail.com") email.From = "chilkat@live.com" ' Send email using smtp.live.com mailman.SmtpHost = "smtp.live.com" mailman.SmtpUsername = "chilkat@live.com" mailman.SmtpPassword = "myPassword" mailman.SmtpPort = 587 mailman.StartTLS = True success = Await mailman.SendEmailAsync(email) If (success <> True) Then Debug.WriteLine(mailman.LastErrorText) Exit Sub End If success = Await mailman.CloseSmtpConnectionAsync() If (success <> True) Then Debug.WriteLine(mailman.LastErrorText) Exit Sub End If Debug.WriteLine("HTML Email Sent!") |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.