Delphi ActiveX
Delphi ActiveX
Query NTP Server for Current Date/Time
Demonstrates how to query an NTP server to get the current date/time.Note: This feature was added in Chilkat v9.5.0.96.
Chilkat Delphi ActiveX Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
json: TChilkatJsonObject;
dt: TCkDateTime;
bLocalTime: Integer;
begin
success := 0;
// Specify the NTP server domain.
// Information is passed in a JSON object to allow for any unanticipated future optional information that might need to be provided.
json := TChilkatJsonObject.Create(Self);
json.UpdateString('ntp_server','pool.ntp.org');
// Query the NTP server for the current date/time.
dt := TCkDateTime.Create(Self);
success := dt.SetFromNtpServer(json.Emit());
if (success = 0) then
begin
Memo1.Lines.Add(dt.LastErrorText);
Exit;
end;
// Show the date/time in various formats..
bLocalTime := 1;
Memo1.Lines.Add(dt.GetAsTimestamp(bLocalTime));
Memo1.Lines.Add(dt.GetAsRfc822(bLocalTime));
Memo1.Lines.Add(IntToStr(dt.GetAsUnixTime(bLocalTime)));
// Sample output:
// 2023-10-31T09:43:27-05:00
// Tue, 31 Oct 2023 09:43:27 -0500
// 1698745407
end;