DataFlex
DataFlex
Load Certificate (.cer) and Private Key (.pvk) generated from makecert
See more Certificates Examples
Demonstrates how to load a certificate (.cer) and private key (.pvk) from the files produced by makecert, such as in the following command:makecert -sv mycertificate.pvk -n "CN=My Simple Certificate" mycertificate.cer -sky Exchange
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Variant vCert
Handle hoCert
Variant vPrivKey
Handle hoPrivKey
Handle hoPdf
String sTemp1
Move False To iSuccess
// First load the .cer file.
// The certificate file (.cer) contains only the certificate (does not include the private key)
Get Create (RefClass(cComChilkatCert)) To hoCert
If (Not(IsComObjectCreated(hoCert))) Begin
Send CreateComObject of hoCert
End
Get ComLoadFromFile Of hoCert "qa_data/certs_and_keys/makecert/mycertificate.cer" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoCert To sTemp1
Showln sTemp1
Procedure_Return
End
// Next, load the .pvk file.
// Note: The password "secret" is what you entered when makecert displayed the dialog asking for a password..
Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey
If (Not(IsComObjectCreated(hoPrivKey))) Begin
Send CreateComObject of hoPrivKey
End
Get ComLoadPvkFile Of hoPrivKey "qa_data/certs_and_keys/makecert/mycertificate.pvk" "secret" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoPrivKey To sTemp1
Showln sTemp1
Procedure_Return
End
// Finally, associate the private key with the certificate.
Get pvComObject of hoPrivKey to vPrivKey
Get ComSetPrivateKey Of hoCert vPrivKey To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoCert To sTemp1
Showln sTemp1
Procedure_Return
End
// At this point, the certificate can be used for signing. For example..
Get Create (RefClass(cComChilkatPdf)) To hoPdf
If (Not(IsComObjectCreated(hoPdf))) Begin
Send CreateComObject of hoPdf
End
// ....
// ....
Get pvComObject of hoCert to vCert
Get ComSetSigningCert Of hoPdf vCert To iSuccess
// ...
// ....
// Some Chilkat classes also provide a method where the cert and private key can be passed separately.
// For example, if SetSigningCert2 is called, then we don't need to explicitly associate the private key with the cert.
Get pvComObject of hoCert to vCert
Get pvComObject of hoPrivKey to vPrivKey
Get ComSetSigningCert2 Of hoPdf vCert vPrivKey To iSuccess
// ...
// ....
End_Procedure