Sample code for 30+ languages & platforms
PureBasic

Add File Attachments to an Email

Demonstrates how to add one or more file attachments to an email.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkEmail.pb"

Procedure ChilkatExample()

    success.i = 0

    email.i = CkEmail::ckCreate()
    If email.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkEmail::setCkSubject(email, "This is a test")
    CkEmail::setCkBody(email, "This is a test")
    CkEmail::setCkFrom(email, "support@chilkatsoft.com")
    success = CkEmail::ckAddTo(email,"Chilkat Admin","admin@chilkatsoft.com")

    ; To add file attachments to an email, call AddFileAttachment
    ; once for each file to be attached.  The method returns
    ; the content-type of the attachment if successful, otherwise
    ; returns cknull
    contentType.s

    contentType = CkEmail::ckAddFileAttachment(email,"something.pdf")
    If CkEmail::ckLastMethodSuccess(email) <> 1
        Debug CkEmail::ckLastErrorText(email)
        CkEmail::ckDispose(email)
        ProcedureReturn
    EndIf

    contentType = CkEmail::ckAddFileAttachment(email,"something.xml")
    If CkEmail::ckLastMethodSuccess(email) <> 1
        Debug CkEmail::ckLastErrorText(email)
        CkEmail::ckDispose(email)
        ProcedureReturn
    EndIf

    contentType = CkEmail::ckAddFileAttachment(email,"something.zip")
    If CkEmail::ckLastMethodSuccess(email) <> 1
        Debug CkEmail::ckLastErrorText(email)
        CkEmail::ckDispose(email)
        ProcedureReturn
    EndIf

    success = CkEmail::ckSaveEml(email,"email.eml")
    If success = 0
        Debug CkEmail::ckLastErrorText(email)
        CkEmail::ckDispose(email)
        ProcedureReturn
    EndIf

    Debug "Saved EML!"


    CkEmail::ckDispose(email)


    ProcedureReturn
EndProcedure