Sample code for 30+ languages & platforms
DataFlex

Duplicate openssl pkcs12 –export –in certfile.cer –inkey certfile.key –out certfile.pfx

See more OpenSSL Examples

How to create a PKCS12 (.p12 or .pfx) from a certificate file and private key file: Demonstrates how to duplicate this OpenSSL command:
Duplicate openssl pkcs12 –export –in certfile.cer –inkey certfile.key –out certfile.pfx

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Variant vPkey
    Handle hoPkey
    Handle hoCert
    Variant vCertChain
    Handle hoCertChain
    Handle hoPfx
    String sPassword
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    Get Create (RefClass(cComChilkatPrivateKey)) To hoPkey
    If (Not(IsComObjectCreated(hoPkey))) Begin
        Send CreateComObject of hoPkey
    End

    // Load the private key from the file.
    Get ComLoadAnyFormatFile Of hoPkey "certFile.key" "" To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoPkey To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get Create (RefClass(cComChilkatCert)) To hoCert
    If (Not(IsComObjectCreated(hoCert))) Begin
        Send CreateComObject of hoCert
    End
    // The LoadFromFile method auto-recognizes the format...
    Get ComLoadFromFile Of hoCert "certfile.cer" To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoCert To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // We'll need a cert chain object to create the PKCS12, so get it
    // from the cert.  

    Get ComGetCertChain Of hoCert To vCertChain
    If (IsComObject(vCertChain)) Begin
        Get Create (RefClass(cComChilkatCertChain)) To hoCertChain
        Set pvComObject Of hoCertChain To vCertChain
    End
    Get ComLastMethodSuccess Of hoCert To bTemp1
    If (Not bTemp1) Begin
        Get ComLastErrorText Of hoCert To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // Create the PFX object, add the cert and private key, and write to a .pfx file.
    Get Create (RefClass(cComChilkatPfx)) To hoPfx
    If (Not(IsComObjectCreated(hoPfx))) Begin
        Send CreateComObject of hoPfx
    End

    // The cert(s) are automatically added in the call to AddPrivateKey
    Get pvComObject of hoPkey to vPkey
    Get ComAddPrivateKey Of hoPfx vPkey vCertChain To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoPfx To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // Write the .pfx to a file.
    Move "myPassword" To sPassword
    Get ComToFile Of hoPfx sPassword "certfile.pfx" To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoPfx To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Showln "Success."


End_Procedure