Sample code for 30+ languages & platforms
PureBasic

Check if a MIME Tree Contains Encrypted Parts

See more MIME Examples

Demonstrates the Chilkat Mime.ContainsEncryptedParts method, which returns whether the currently visible MIME tree contains a CMS/PKCS #7 encrypted entity. It takes no arguments.

Note: The file path is relative to the application's current working directory. Absolute paths may also be used. Supply the path to your own file.

Background: The tree-wide counterpart to IsEncrypted: it finds an encrypted entity nested anywhere in the message, not just at the top. This lets you detect partially-encrypted messages and decide which parts require decryption before processing.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkMime.pb"

Procedure ChilkatExample()

    success.i = 0

    ;  Demonstrates the Mime.ContainsEncryptedParts method, which returns whether the MIME tree contains a CMS/PKCS #7 encrypted entity.  It takes no arguments.

    mime.i = CkMime::ckCreate()
    If mime.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkMime::ckLoadMimeFile(mime,"qa_data/message.eml")
    If success = 0
        Debug CkMime::ckLastErrorText(mime)
        CkMime::ckDispose(mime)
        ProcedureReturn
    EndIf

    If CkMime::ckContainsEncryptedParts(mime)
        Debug "The message tree contains an encrypted part."
    Else
        Debug "The message tree contains no encrypted part."
    EndIf



    CkMime::ckDispose(mime)


    ProcedureReturn
EndProcedure