DataFlex
DataFlex
Load an Email from MIME in a BinData
See more Email Object Examples
Demonstrates the Chilkat Email.SetFromMimeBd method, which loads an email from the MIME stored in a BinData object. On success, it replaces the entire current email. This example serializes one email into a BinData with GetMimeBd, then reconstructs it in a second object.
Background: This is the binary counterpart to
SetFromMimeText and SetFromMimeSb. When a message's raw MIME arrives as bytes — read from a file, a socket, or a database blob into a BinData — loading it directly avoids any lossy or awkward byte-to-text conversion, which matters because MIME can carry binary transfer encodings.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoSource
Variant vBdMime
Handle hoBdMime
Handle hoEmail
String sTemp1
Move False To iSuccess
// Demonstrates the SetFromMimeBd method, which loads an email from MIME stored in a BinData
// object. On success, it replaces the entire current email.
// Build a source email and serialize its MIME into a BinData.
Get Create (RefClass(cComChilkatEmail)) To hoSource
If (Not(IsComObjectCreated(hoSource))) Begin
Send CreateComObject of hoSource
End
Set ComSubject Of hoSource To "Source message"
Set ComFrom Of hoSource To "alice@example.com"
Set ComBody Of hoSource To "Hello from a BinData."
Get Create (RefClass(cComChilkatBinData)) To hoBdMime
If (Not(IsComObjectCreated(hoBdMime))) Begin
Send CreateComObject of hoBdMime
End
Get pvComObject of hoBdMime to vBdMime
Get ComGetMimeBd Of hoSource vBdMime To iSuccess
// Load a new email object from the BinData MIME.
Get Create (RefClass(cComChilkatEmail)) To hoEmail
If (Not(IsComObjectCreated(hoEmail))) Begin
Send CreateComObject of hoEmail
End
Get pvComObject of hoBdMime to vBdMime
Get ComSetFromMimeBd Of hoEmail vBdMime To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoEmail To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComSubject Of hoEmail To sTemp1
Showln "Loaded subject: " sTemp1
End_Procedure