Sample code for 30+ languages & platforms
Go

Download POP3 Email to MIME

Download the email from a POP3 mailbox directly into MIME, without parsing into email objects.

Chilkat Go Downloads

Go
    success := false

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    // The mailman object is used for receiving (POP3) 
    // and sending (SMTP) email.
    mailman := chilkat.NewMailMan()

    // Set the POP3 server's hostname
    mailman.SetMailHost("pop.example.com")

    // Set the POP3 login/password.
    mailman.SetPopUsername("myLogin")
    mailman.SetPopPassword("myPassword")

    // First, get the complete set of UIDLs for the email in the POP3 mailbox:
    stUidls := chilkat.NewStringTable()
    success = mailman.FetchUidls(stUidls)
    if success == false {
        fmt.Println(mailman.LastErrorText())
        mailman.DisposeMailMan()
        stUidls.DisposeStringTable()
        return
    }

    // Download each email as MIME.
    // If desired, the MIME can be loaded into an email object.
    bdMime := chilkat.NewBinData()
    email := chilkat.NewEmail()

    count := stUidls.Count()
    i := 0
    for i < count {
        success = mailman.FetchMimeBd(*stUidls.StringAt(i),bdMime)
        if success == false {
            fmt.Println(mailman.LastErrorText())
            mailman.DisposeMailMan()
            stUidls.DisposeStringTable()
            bdMime.DisposeBinData()
            email.DisposeEmail()
            return
        }

        email.SetFromMimeBd(bdMime)
        fmt.Println("From: ", email.From())
        fmt.Println("Subject: ", email.Subject())

        i = i + 1
    }


    mailman.DisposeMailMan()
    stUidls.DisposeStringTable()
    bdMime.DisposeBinData()
    email.DisposeEmail()