![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) POP3 to SMTP ForwarderRead a POP3 mailbox and forwards the email to another email address, keeping the recipients in the original email the same. Note: This example requires Chilkat v11.0.0 or greater.
LOCAL lnSuccess LOCAL loMailman LOCAL lcFromAddr LOCAL lcToAddr LOCAL loStUidls LOCAL loBdMime LOCAL lnCount LOCAL i LOCAL lcUidl lnSuccess = 0 * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. loMailman = CreateObject('Chilkat.MailMan') * Set the POP3 server's hostname loMailman.MailHost = "pop.example.com" * Set the POP3 login/password. loMailman.PopUsername = "MY_POP3_LOGIN" loMailman.PopPassword = "MY_POP3_PASSWORD" * Set the SMTP hostname for sending. loMailman.SmtpHost = "smtp.example.com" loMailman.SmtpUsername = "MY_SMTP_LOGIN" loMailman.SmtpPassword = "MY_SMTP_PASSWORD" lcFromAddr = "me@example.com" lcToAddr = "recipient@somewhere.com" * The the UIDLs for all email in the POP3 mailbox. loStUidls = CreateObject('Chilkat.StringTable') lnSuccess = loMailman.FetchUidls(loStUidls) IF (lnSuccess = 0) THEN ? loMailman.LastErrorText RELEASE loMailman RELEASE loStUidls CANCEL ENDIF * Just mark messages for delete, then delete at the end. loMailman.ImmediateDelete = 0 * Download the email from the server. Call FetchMimeBd * because we don't want to load the emails into email objects. * (We'll delete the emails that are forwarded without error.) loBdMime = CreateObject('Chilkat.BinData') lnCount = loStUidls.Count i = 0 DO WHILE i < lnCount lcUidl = loStUidls.StringAt(i) ? "UIDL: " + lcUidl lnSuccess = loMailman.FetchMimeBd(lcUidl,loBdMime) IF (lnSuccess = 0) THEN ? loMailman.LastErrorText RELEASE loMailman RELEASE loStUidls RELEASE loBdMime CANCEL ENDIF lnSuccess = loMailman.SendMimeBd(lcFromAddr,lcToAddr,loBdMime) IF (lnSuccess = 0) THEN ? loMailman.LastErrorText RELEASE loMailman RELEASE loStUidls RELEASE loBdMime CANCEL ENDIF lnSuccess = loMailman.DeleteByUidl(lcUidl) IF (lnSuccess = 0) THEN ? loMailman.LastErrorText RELEASE loMailman RELEASE loStUidls RELEASE loBdMime CANCEL ENDIF i = i + 1 ENDDO * Delete messages marked for delete. loMailman.ImmediateDelete = 1 lnSuccess = loMailman.Pop3EndSession() IF (lnSuccess = 0) THEN ? loMailman.LastErrorText RELEASE loMailman RELEASE loStUidls RELEASE loBdMime CANCEL ENDIF ? "Success." RELEASE loMailman RELEASE loStUidls RELEASE loBdMime |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.