(Tcl) Transition from MailMan.FetchMultipleMime to MailMan.FetchMimeBd
Provides instructions for replacing deprecated FetchMultipleMime method calls with FetchMimeBd. Note: This example requires Chilkat v11.0.0 or greater.
load ./chilkat.dll
set mailman [new_CkMailMan]
# ...
# ...
set saUidls [new_CkStringArray]
CkStringArray_Append $saUidls "aaa"
CkStringArray_Append $saUidls "bbb"
CkStringArray_Append $saUidls "ccc"
set stUidls [new_CkStringTable]
CkStringTable_Append $stUidls "aaa"
CkStringTable_Append $stUidls "bbb"
CkStringTable_Append $stUidls "ccc"
# ------------------------------------------------------------------------
# The FetchMultipleMime method is deprecated:
# saMime is a CkStringArray
set saMime [CkMailMan_FetchMultipleMime $mailman $saUidls]
if {[CkMailMan_get_LastMethodSuccess $mailman] == 0} then {
puts [CkMailMan_lastErrorText $mailman]
delete_CkMailMan $mailman
delete_CkStringArray $saUidls
delete_CkStringTable $stUidls
exit
}
# ...
# ...
delete_CkStringArray $saMime
# ------------------------------------------------------------------------
# Do the equivalent using FetchMimeBd.
set success 0
set bdMime [new_CkBinData]
set numUidls [CkStringTable_get_Count $stUidls]
set i 0
while {$i < $numUidls} {
set success [CkMailMan_FetchMimeBd $mailman [CkStringTable_stringAt $stUidls $i] $bdMime]
# ...
# ...
set i [expr $i + 1]
}
delete_CkMailMan $mailman
delete_CkStringArray $saUidls
delete_CkStringTable $stUidls
delete_CkBinData $bdMime
|