DataFlex
DataFlex
Convert 8-bit MIME Parts to Base64
See more MIME Examples
Demonstrates the Chilkat Mime.Convert8Bit method, which recursively converts every part whose Content-Transfer-Encoding is 8bit or binary to base64. It takes no arguments and is a void method.
Note: The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.
Background: The original SMTP standard only guaranteed 7-bit transport, and some legacy servers still reject or mangle raw 8-bit and binary content. Converting those parts to base64 — a 7-bit-safe encoding — makes the whole message safe to relay through such systems without loss. It walks the entire tree, so a multipart message with several offending parts is fixed in one call.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoMime
String sMimeText
String sTemp1
Boolean bTemp1
Move False To iSuccess
Get Create (RefClass(cComChilkatMime)) To hoMime
If (Not(IsComObjectCreated(hoMime))) Begin
Send CreateComObject of hoMime
End
Get ComLoadMimeFile Of hoMime "qa_data/message.eml" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoMime To sTemp1
Showln sTemp1
Procedure_Return
End
// Recursively convert every part whose Content-Transfer-Encoding is 8bit or binary to base64.
// This makes the MIME safe to transmit over channels that only support 7-bit text (such as some
// legacy SMTP servers).
Send ComConvert8Bit To hoMime
Showln "8bit/binary parts converted to base64."
Get ComGetMime Of hoMime To sMimeText
Get ComLastMethodSuccess Of hoMime To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoMime To sTemp1
Showln sTemp1
Procedure_Return
End
Showln sMimeText
End_Procedure