Sample code for 30+ languages & platforms
Rust

Select an IMAP Mailbox

See more IMAP Examples

Demonstrates the Chilkat Imap.SelectMailbox method, which opens a mailbox for read-write access. A mailbox must be selected before message fetch, search, flag, copy, move, or expunge operations that act on messages. This example selects the Inbox.

Background: In IMAP, mail is organized into mailboxes (folders), and most message operations act on the currently selected one — so selecting a mailbox is the required step between logging in and working with messages. SelectMailbox opens it read-write, allowing changes such as setting flags or deleting. When you only need to read and must not alter anything (including the \Seen flag), use ExamineMailbox instead.

Chilkat Rust Downloads

Rust

// Demonstrates the Imap.SelectMailbox method, which opens a mailbox for read-write access.
// A mailbox must be selected before message fetch, search, flag, copy, move, or expunge
// operations that act on messages.

let imap = chilkat::Imap::new();

imap.set_ssl(true);
imap.set_port(993);

if imap.connect("imap.example.com").is_err() {
    println!("{}", imap.last_error_text());
    return;
}

if imap.login("user@example.com", "myPassword").is_err() {
    println!("{}", imap.last_error_text());
    return;
}

// Open the Inbox for read-write access.
if imap.select_mailbox("Inbox").is_err() {
    println!("{}", imap.last_error_text());
    return;
}

println!("Inbox selected for read-write access.");

if imap.disconnect().is_err() {
    println!("{}", imap.last_error_text());
    return;
}