Sample code for 30+ languages & platforms
Visual FoxPro

Transition from MailMan.TransferMultipleMime to MailMan.FetchMimeBd

Provides instructions for replacing deprecated TransferMultipleMime method calls with FetchMimeBd.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loMailman
LOCAL loSaUidls
LOCAL loStUidls
LOCAL loSa
LOCAL loBdMime
LOCAL lnNumUidls
LOCAL i

lnSuccess = 0

loMailman = CreateObject('Chilkat.MailMan')

* ...
* ...

loSaUidls = CreateObject('Chilkat.StringArray')
loSaUidls.Append("aaa")
loSaUidls.Append("bbb")
loSaUidls.Append("ccc")

loStUidls = CreateObject('Chilkat.StringTable')
loStUidls.Append("aaa")
loStUidls.Append("bbb")
loStUidls.Append("ccc")

* ------------------------------------------------------------------------
* The TransferMultipleMime method is deprecated:

loSa = loMailman.TransferMultipleMime(loSaUidls)
IF (loMailman.LastMethodSuccess = 0) THEN
    ? loMailman.LastErrorText
    RELEASE loMailman
    RELEASE loSaUidls
    RELEASE loStUidls
    CANCEL
ENDIF

* ...
* ...

RELEASE loSa

* ------------------------------------------------------------------------
* Do the equivalent using FetchMimeBd.

loMailman.ImmediateDelete = 0

lnSuccess = 0
loBdMime = CreateObject('Chilkat.BinData')
lnNumUidls = loStUidls.Count
i = 0
DO WHILE i < lnNumUidls
    lnSuccess = loMailman.FetchMimeBd(loStUidls.StringAt(i),loBdMime)
    * ...

    * Mark the email for deletion.
    lnSuccess = loMailman.DeleteByUidl(loStUidls.StringAt(i))
    * ...

    i = i + 1
ENDDO

* emails marked for deletion will be deleted at this time
lnSuccess = loMailman.Pop3EndSession()

RELEASE loMailman
RELEASE loSaUidls
RELEASE loStUidls
RELEASE loBdMime