Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) Send HTML Email with AttachmentsDemonstrates how to send an HTML email with file attachments.
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set mailman [new_CkMailMan] CkMailMan_put_SmtpHost $mailman "smtp.my-starttls-mail-server.com" CkMailMan_put_SmtpUsername $mailman "MY-SMTP-USERNAME" CkMailMan_put_SmtpPassword $mailman "MY-SMTP-PASSWORD" CkMailMan_put_StartTLS $mailman 1 CkMailMan_put_SmtpPort $mailman 587 # Create a new email object set email [new_CkEmail] CkEmail_put_Subject $email "Test SMTP API to Send HTML Email with Attachments" CkEmail_put_From $email "Joe Programmer <joe@my-starttls-mail-server.com>" CkEmail_AddTo $email "Chilkat Support" "support@chilkatsoft.com" # Add a plain-text alternative body, which will likely never be seen. # (It is shown if the receiving email client is incapable of displaying HTML email.) CkEmail_AddPlainTextAlternativeBody $email "This is a plain-text alternative body..." # Our HTML will include an image, so add the related image here. set contentIdStarfish [CkEmail_addRelatedFile $email "qa_data/jpg/starfish.jpg"] if {[CkEmail_get_LastMethodSuccess $email] != 1} then { puts [CkEmail_lastErrorText $email] delete_CkMailMan $mailman delete_CkEmail $email exit } # The src attribute for the image tag is set to the contentIdStarfish: set sbHtml [new_CkStringBuilder] CkStringBuilder_Append $sbHtml "<html><body><p>This is an HTML email with an embedded image.</p>" CkStringBuilder_Append $sbHtml "<p><img src=\"cid:CONTENT_ID_STARFISH\" /></p></body></html>" set numReplacements [CkStringBuilder_Replace $sbHtml "CONTENT_ID_STARFISH" $contentIdStarfish] CkEmail_AddHtmlAlternativeBody $email [CkStringBuilder_getAsString $sbHtml] # Finally, add some attachments to the email. # Add a file attachment. set success [CkEmail_AddFileAttachment2 $email "qa_data/pdf/fishing.pdf" "application/pdf"] if {$success != 1} then { puts [CkEmail_lastErrorText $email] delete_CkMailMan $mailman delete_CkEmail $email delete_CkStringBuilder $sbHtml exit } # Add an attachment where the content is contained in a string. set content "This is the content of the 2nd attached file." CkEmail_AddStringAttachment $email "someText.txt" $content # Send the HTML email. set success [CkMailMan_SendEmail $mailman $email] if {$success != 1} then { puts [CkMailMan_lastErrorText $mailman] delete_CkMailMan $mailman delete_CkEmail $email delete_CkStringBuilder $sbHtml exit } set success [CkMailMan_CloseSmtpConnection $mailman] if {$success != 1} then { puts "Connection to SMTP server not closed cleanly." } puts "HTML email with attachments sent!" delete_CkMailMan $mailman delete_CkEmail $email delete_CkStringBuilder $sbHtml |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.