FoxPro Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Visual FoxPro Examples

Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
Socket
Spider
SFTP
SMTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression
Self-Extractor

More Examples...
Amazon S3
DKIM / DomainKey
NTLM
RSS
Atom
Byte Array
Service
PPMD
Deflate
DH Key Exchange
DSA
FileAccess
Bzip2
LZW

 

Non-Chilkat Links
Text and String Handling

Bounced Email Handling

Download Chilkat Bounce ActiveX

Demonstrates how to examine emails and detect which are bounced (automated) replies. Classifies each email according to the type of bounce.

Download Chilkat Email ActiveX

LOCAL loBounce
LOCAL lnSuccess
LOCAL loMailman
LOCAL loBundle
LOCAL i
LOCAL loEmail

loBounce = CreateObject('Chilkat.Bounce')

lnSuccess = loBounce.UnlockComponent("Anything for 30-day trial")
IF (lnSuccess = 0) THEN
    =MESSAGEBOX(loBounce.LastErrorText)
    QUIT
ENDIF

*  The mailman object is used for receiving (POP3)
*  and sending (SMTP) email.
loMailman = CreateObject('Chilkat.MailMan2')

*  Any string argument automatically begins the 30-day trial.
lnSuccess = loMailman.UnlockComponent("30-day trial")
IF (lnSuccess <> 1) THEN
    =MESSAGEBOX(loMailman.LastErrorText)
    QUIT
ENDIF

*  Set the POP3 server's hostname
loMailman.MailHost = "mail.chilkatsoft.com"

*  Set the POP3 login/password.
loMailman.PopUsername = "myLogin"
loMailman.PopPassword = "myPassword"

*  Copy the all email from the user's POP3 mailbox
*  into a bundle object.  The email remains on the server.
*  (There are other methods for deleting email from a POP3 server.)
loBundle = loMailman.CopyMail()

IF (loBundle = NULL ) THEN
    =MESSAGEBOX(loMailman.LastErrorText)
    QUIT
ENDIF

FOR i = 0 TO loBundle.MessageCount - 1
    loEmail = loBundle.GetEmail(i)

    lnSuccess = loBounce.ExamineEmail(loEmail)
    IF (lnSuccess = 0) THEN
        =MESSAGEBOX(loBounce.LastErrorText)
        QUIT
    ENDIF

    IF (loBounce.BounceType = 1) THEN
        *  Hard bounce, log the email address
        ? "Hard Bounce: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 2) THEN
        *  Soft bounce, log the email address
        ? "Soft Bounce: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 3) THEN
        *  General bounce, no email address available.
        ? "General Bounce: No email address"
    ENDIF

    IF (loBounce.BounceType = 4) THEN
        *  General bounce, log the email address
        ? "General Bounce: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 5) THEN
        *  Mail blocked, log the email address
        *  A bounce occured because the sender was blocked.
        ? "Mail Blocked: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 6) THEN
        *  Auto-reply, log the email address
        ? "Auto-Reply: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 7) THEN
        *  Transient (recoverable) Failure, log the email address
        ? "Transient Failure: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 8) THEN
        *  Subscribe request, log the email address
        ? "Subscribe Request: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 9) THEN
        *  Unsubscribe Request, log the email address
        ? "Unsubscribe Request: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 10) THEN
        *  Virus Notification, log the email address
        ? "Virus Notification: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 11) THEN
        *  Suspected bounce.
        *  This should be rare.  It indicates that the Bounce
        *  component found strong evidence that this is a bounced
        *  email, but couldn't quite recognize everything it
        *  needed to be 100% sure.  Feel free to notify
        *  support@chilkatsoft.com regarding emails having this
        *  bounce type.
        ? "Suspected Bounce!"
    ENDIF

    IF (loBounce.BounceType = 12) THEN
        *  Challenge/Response - Auto-reply message sent by SPAM software
        *  where only verified email addresses are accepted.
        ? "Challenge: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 13) THEN
        *  Address Change Notification Message.
        ? "Address Change: " + loBounce.BounceAddress
    ENDIF

    IF (loBounce.BounceType = 14) THEN
        *  Success DSN indicating that the message was successfully relayed.
        ? "DSN Successful Relay: "
    ENDIF

    RELEASE loEmail
NEXT

RELEASE loBundle

loMailman.Pop3EndSession()

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Email Component · ASP Mail Component · XML Parser