Sample code for 30+ languages & platforms
Unicode C++

Get Certificate Valid To/From Dates

Demonstrates how to get the certificate "valid from" and "valid to" dates.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkCertW.h>
#include <CkDateTimeW.h>
#include <CkDtObjW.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkCertW cert;

    success = cert.LoadFromFile(L"qa_data/certs/testCert.cer");
    if (success == false) {
        wprintf(L"%s\n",cert.lastErrorText());
        return;
    }

    //  Get the certificate valid-from date/time
    CkDateTimeW ckdt;
    ckdt.SetFromRfc822(cert.validFromStr());

    //  Get the local timestamp string.
    wprintf(L"Valid from: %s\n",ckdt.getAsTimestamp(true));
    //  Valid from: 2017-03-17T19:00:00-05:00

    //  Now get the date/time as another object where we can get the individual numeric date parts.
    CkDtObjW dt;
    ckdt.ToDtObj(true,dt);

    wprintf(L"%d/%d/%d  %d:%d\n",dt.get_Day(),dt.get_Month(),dt.get_Year(),dt.get_Hour(),dt.get_Minute());

    //  Get the certificate valid-to date/time
    ckdt.SetFromRfc822(cert.validToStr());

    wprintf(L"Valid to: %s\n",ckdt.getAsTimestamp(true));
    //  Valid to: 2020-03-18T18:59:59-05:00new DtObj dt;
    ckdt.ToDtObj(true,dt);

    wprintf(L"%d/%d/%d  %d:%d\n",dt.get_Day(),dt.get_Month(),dt.get_Year(),dt.get_Hour(),dt.get_Minute());
    }