Sample code for 30+ languages & platforms
Delphi ActiveX Requires Chilkat v11.0.0+

Get Certificate Valid To/From Dates

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

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
cert: TChilkatCert;
ckdt: TCkDateTime;
dt: TDtObj;

begin
success := 0;

cert := TChilkatCert.Create(Self);

success := cert.LoadFromFile('qa_data/certs/testCert.cer');
if (success = 0) then
  begin
    Memo1.Lines.Add(cert.LastErrorText);
    Exit;
  end;

//  Get the certificate valid-from date/time
ckdt := TCkDateTime.Create(Self);
ckdt.SetFromRfc822(cert.ValidFromStr);

//  Get the local timestamp string.
Memo1.Lines.Add('Valid from: ' + ckdt.GetAsTimestamp(1));
//  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.
dt := TDtObj.Create(Self);
ckdt.ToDtObj(1,dt.ControlInterface);

Memo1.Lines.Add(IntToStr(dt.Day) + '/' + IntToStr(dt.Month) + '/' + IntToStr(dt.Year) + '  ' + IntToStr(dt.Hour) + ':' + IntToStr(dt.Minute));

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

Memo1.Lines.Add('Valid to: ' + ckdt.GetAsTimestamp(1));
//  Valid to: 2020-03-18T18:59:59-05:00new DtObj dt;
ckdt.ToDtObj(1,dt.ControlInterface);

Memo1.Lines.Add(IntToStr(dt.Day) + '/' + IntToStr(dt.Month) + '/' + IntToStr(dt.Year) + '  ' + IntToStr(dt.Hour) + ':' + IntToStr(dt.Minute));