XFRX doesn't close the output PDF file if certificate password is not valid.
KB-20220312-01
Version
before XFRX 22.0
Symptoms
If password for certificate not is valid, then XFRX doesn't close the pdf file.
Workaround
Call the Finish() method of the internal object oDocumentwriter:
loSession=EVALUATE([xfrx("XFRX#LISTENER")]) loSession.DigitalSignature("testeqeus.pfx","badpassword") lnRetVal = loSession.SetParams("output.pdf", , , ,.F.,,"PDF") IF lnRetVal<>0 IF INLIST(lnRetVal, -11, -12) loSession.oxfSession.oDocumentwriter.oPDF.Finish() ENDIF ENDIF
loSession=EVALUATE([xfrx("XFRX#INIT")]) loSession.DigitalSignature("testeqeus.pfx","badpassword") lnRetVal = loSession.SetParams("output.pdf", , , ,.F.,,"PDF") IF lnRetVal<>0 IF INLIST(lnRetVal, -11, -12) loSession.oDocumentwriter.oPDF.Finish() ENDIF ENDIF