Sample code for 30+ languages & platforms
Tcl

Transition from Imap.FetchChunk to Imap.FetchRange

Provides instructions for replacing deprecated FetchChunk method calls with FetchRange.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

set imap [new_CkImap]

# ...
# ...

set startSeqNum 1
set count 5

set failedSet [new_CkMessageSet]

set fetchedSet [new_CkMessageSet]

# ------------------------------------------------------------------------
# The FetchChunk method is deprecated:

# bundleObj is a CkEmailBundle
set bundleObj [CkImap_FetchChunk $imap $startSeqNum $count $failedSet $fetchedSet]
if {[CkImap_get_LastMethodSuccess $imap] == 0} then {
    puts [CkImap_lastErrorText $imap]
    delete_CkImap $imap
    delete_CkMessageSet $failedSet
    delete_CkMessageSet $fetchedSet
    exit
}

# ...
# ...

delete_CkEmailBundle $bundleObj

# ------------------------------------------------------------------------
# Do the equivalent using FetchRange.
# Your application creates a new, empty EmailBundle object which is passed 
# in the last argument and filled upon success.

set headersOnly 0

set bundleOut [new_CkEmailBundle]

set success [CkImap_FetchRange $imap $headersOnly $startSeqNum $count $bundleOut]
if {$success == 0} then {
    puts [CkImap_lastErrorText $imap]
    delete_CkImap $imap
    delete_CkMessageSet $failedSet
    delete_CkMessageSet $fetchedSet
    delete_CkEmailBundle $bundleOut
    exit
}


delete_CkImap $imap
delete_CkMessageSet $failedSet
delete_CkMessageSet $fetchedSet
delete_CkEmailBundle $bundleOut