Sample code for 30+ languages & platforms
Visual FoxPro

Get Certificate Subject Part by Name or OID

Demonstrates the GetSubjectPart method where a name or OID can be passed.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loCert
LOCAL lcSerialNum

lnSuccess = 0

loCert = CreateObject('Chilkat.Cert')

lnSuccess = loCert.LoadByCommonName("myCert")
IF (lnSuccess = 0) THEN
    ? loCert.LastErrorText
    RELEASE loCert
    CANCEL
ENDIF

* This example demonstrates getting the SERIALNUMBER part of the subject,
* if one such part exists in the cert's subject.
* Not too many certicates include the serial number in the Subject.
* (Chilean issued certificates for SII is one such case where the SERIALNUMBER part exists within the Subject.)
lcSerialNum = loCert.GetSubjectPart("SERIALNUMBER")
IF (loCert.LastMethodSuccess = 0) THEN
    ? "No SERIALNUMBER part exists."
    RELEASE loCert
    CANCEL
ENDIF

? lcSerialNum

* We could also get the part by the OID.
* See https://oidref.com/2.5.4.5 for a list of OID's in the 2.5.4.* range..
* The OID for SERIALNUMBER is "2.5.4.5"
lcSerialNum = loCert.GetSubjectPart("2.5.4.5")
IF (loCert.LastMethodSuccess = 0) THEN
    ? "No SERIALNUMBER part exists."
    RELEASE loCert
    CANCEL
ENDIF

? lcSerialNum

RELEASE loCert