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
(Visual FoxPro) Send Email to Distribution ListSends the same email to a list of 1000 email addresses in 50 sends where each email has 20 recipients. Note: Chilkat is not intended nor designed for mass emailing. A solution such as this might be used for a corporate emailing to employees, or an emailing to newsletter subscribers.
LOCAL loMailman LOCAL lnSuccess LOCAL loEmail LOCAL loBdMime LOCAL loDistList LOCAL loSbRecipients LOCAL i LOCAL lnSzDistList LOCAL j * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.MailMan') loMailman = CreateObject('Chilkat.MailMan') loMailman.SmtpHost = "smtp.mymailserver.com" loMailman.SmtpPort = 465 loMailman.SmtpSsl = 1 loMailman.SmtpUsername = "myUsername" loMailman.SmtpPassword = "myPassword" * Create a new email object * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Email') loEmail = CreateObject('Chilkat.Email') loEmail.Subject = "This is a test" loEmail.Body = "This is a test" loEmail.From = "Senders Name <sender@example.com>" loEmail.AddTo("Subscribers","subscribers@example.com") * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.BinData') loBdMime = CreateObject('Chilkat.BinData') loMailman.RenderToMimeBd(loEmail,loBdMime) * Load a file containing one email address per line. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringTable') loDistList = CreateObject('Chilkat.StringTable') lnSuccess = loDistList.AppendFromFile(1000,"utf-8","qa_data/distList.txt") IF (lnSuccess = 0) THEN ? loDistList.LastErrorText RELEASE loMailman RELEASE loEmail RELEASE loBdMime RELEASE loDistList CANCEL ENDIF * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder') loSbRecipients = CreateObject('Chilkat.StringBuilder') i = 0 lnSzDistList = loDistList.Count j = 0 DO WHILE i < lnSzDistList * Build a list of comma-separated recipients. IF (j > 0) THEN loSbRecipients.Append(",") ENDIF loSbRecipients.Append(loDistList.StringAt(i)) i = i + 1 j = j + 1 * If we have 20 recipients, or we have the final recipient in the final chunk, then send. IF ((j = 20) OR (i = lnSzDistList)) THEN lnSuccess = loMailman.SendMimeBd("sender@example.com",loSbRecipients.GetAsString(),loBdMime) IF (lnSuccess <> 1) THEN ? loMailman.LastErrorText RELEASE loMailman RELEASE loEmail RELEASE loBdMime RELEASE loDistList RELEASE loSbRecipients CANCEL ENDIF j = 0 loSbRecipients.Clear() ENDIF ENDDO lnSuccess = loMailman.CloseSmtpConnection() IF (lnSuccess <> 1) THEN ? "Connection to SMTP server not closed cleanly." ENDIF ? "Email sent to distirbution list." RELEASE loMailman RELEASE loEmail RELEASE loBdMime RELEASE loDistList RELEASE loSbRecipients |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.