Home » Tipps & Tricks » System » Systemeinstellungen » Systemzeit und -datum ändern

Systemzeit und -datum ändern

Mithilfe der API-Funktion SetLocalTime ist es möglich die Systemzeit (bis auf Millisekundenebene) und das Systemdatum zu ändern. Ihr muss als Parameter ein Record vom Typ TSystemTime übergeben werden, der die nötigen Informationen enthält.Folgender Aufruf setzt das Datum auf den 16 des Monats Oktober (10) des Jahres 2003. Als Zeit wird 10:25 Uhr gewählt.

procedure TForm1.Button1Click(Sender: TObject);
var
TimeStruct: TSystemTime;
begin
TimeStruct.wYear := 2003;
TimeStruct.wMonth := 10;
TimeStruct.wDay := 16;
TimeStruct.wHour := 10;
TimeStruct.wMinute := 25;
TimeStruct.wSecond := 0;
TimeStruct.wMilliSeconds := 0;
if SetLocalTime(TimeStruct) then
   ShowMessage('Systemzeit wurde erfolgreich geändert!')
else
   RaiselastOSError;
end;

RaiseLastOSError ist erst ab Delphi 6 verfügbar. Programmierer, die mit älteren Versionen arbeiten müssen an dieser Stelle RaiseLastWin32Error verwenden.Des Weiteren gibt es die Routinen DateTimeToSystemTime und SystemTimeToDateTime, die zwischen einem TDateTime-Record und einer TSystemTime-Struktur konvertieren. Weitere Informationen zum Thema Systemzeit finden Sie im Artikel über „Datum und Uhrzeit ermitteln“ (siehe Verweise).