Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Windows 10 "Uhrzeit automatisch festlegen" deaktivieren (https://www.delphipraxis.net/202072-windows-10-uhrzeit-automatisch-festlegen-deaktivieren.html)

TUX_der_Pinguin 25. Sep 2019 08:35

Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Hallo Zusammen,

ich suche nach einer Möglichkeit aus einer Anwendung heraus die Zeitsynchronisation von Windows 10 zu deaktivieren, entweder ganz oder nur zeitweise während die Anwendung etwas bestimmtes macht. Hat jemand eine Idee wie man das machen könnte?

Falls es nicht über direkte API Zugriffe möglich ist, ein Script auszuführen wäre zur Not natürlich auch möglich.

mfg

TUX

THY4243 25. Sep 2019 11:09

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Hallo TUX,

eine Möglichkeit besteht darin, den Windows Zeitdienst "W32Time" zu stoppen und wieder zu starten.

Beispiele finden sich im Forum oder hier:
http://www.delphifaq.com/faq/delphi_...API/f521.shtml

VG

TUX_der_Pinguin 26. Sep 2019 08:26

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Zitat:

Zitat von THY4243 (Beitrag 1447829)
Hallo TUX,

eine Möglichkeit besteht darin, den Windows Zeitdienst "W32Time" zu stoppen und wieder zu starten.

Beispiele finden sich im Forum oder hier:
http://www.delphifaq.com/faq/delphi_...API/f521.shtml

VG

Das wäre eine Möglichkeit, nur frage ich mich ob man damit nicht auch unschöne Nebeneffekte hervorruft. Woran man jetzt noch nicht denkt. Schöner wäre natürlich man könnte die Einstellung ändern, das die Zeit nicht mehr synchronisiert wird.

Und da man sich nie sicher sein kann ob Windows die Einstellung nicht doch wieder ändert, evtl. durch ein Update, wäre es perfekt man könnte vor jedem Start der Anwendung die Einstellung überprüfen und ggf. wieder deaktivieren.

TiGü 26. Sep 2019 09:29

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Darf man fragen was der eigentliche Grund ist, die Uhrzeit-Synchronisierung zu stoppen?

TUX_der_Pinguin 26. Sep 2019 09:46

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Zitat:

Zitat von TiGü (Beitrag 1447972)
Darf man fragen was der eigentliche Grund ist, die Uhrzeit-Synchronisierung zu stoppen?

Der Hintergrund ist, das Daten aufgezeichnet werden und die werden mit der Uhrzeit versehen und wenn jetzt die Uhrzeit während der Aufzeichnung synchronisiert wird, kann es vorkommen das plötzlich Daten jünger sind als die zuvor aufgezeichnete Daten. Sprich die Aufzeichnung kann um einige Sekunden zurückspringen evtl. auch vorspringen je nachdem ob die Uhr des PCs vor oder nachgeht. Und da die Daten anschließend analysiert werden könnte es so zu Fehlern kommen.

Delbor 26. Sep 2019 13:26

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Hi TUX_der_Pinguin

Wieso hälst du nicht einfach den Zeitpunkt fest, an dem die Aufzeichnung der Daten beginnt und benutzt diesen?

PS: ich wusste. Google ist ein schlaues Kerlchen. Und so hab ich den mal befragt, ob ich das auch richtig verstanden habe. Und der meint: nein.
Zitat aus der verlinkten Seite:
Zitat:

Lösung: In Windows ist tatsächlich eine Systemaufgabe eingetragen, die einmal wöchentlich die lokale Zeit mit einem Internet-Zeitserver abgleicht.
Du müsstest also bei Programmstart oder vor der Dateneingabe prüfen, wann und allenfalls wie oft die Synchronisation durchgeführt wird.

Offensichtlich gibts unter Delphi mindestens eine Klasse, die auf die Systemzeit zugreifen kann.

Gruss
Delbor

jobo 26. Sep 2019 13:57

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Gerne nimmt man hier auch ein Server Timestamp. Der ist unabhängig von diesen lokalen Effekten oder sogar lokalen Manipulationen (z.B. wegen ablaufender Trialphase irgendeiner Software)
Auf Servern kann natürlich der gleiche Effekt auftreten. Hier gibt es seitens OS die Möglichkeit, schleichend die Uhrzeit anzupassen um genau diese Effekte zu vermeiden. Eine Uhrzeit wird also z.B. nicht zurückgedreht, sondern läuft nur langsamer, bis es passt.

Weitere Alternative:
Man nimmt nicht die Uhrzeit alleine, sondern verwendet zusätzlich ein Autoinc Mechanismus und nimmt dessen Werte als Sequenz zur Zeit dazu.

Dalai 26. Sep 2019 14:02

AW: Windows 10 "Uhrzeit automatisch festlegen" deaktivieren
 
Berechnet nicht auch der Windows Zeitdienst einen Drift und passt die Systemzeit nur langsam an die korrekte Uhrzeit an? Die Linux NTP-Software (ntpd, chronyd) tut das jedenfalls, um genau solche Sprünge zu vermeiden, die insbesondere bei Datenbankservern (MySQL, Postgres) zu Problemen führen konnen.

Klar, solange es Sommerzeit und Winterzeit mit der zugehörigen Umstellung gibt, sind größere Sprünge möglich.

Grüße
Dalai


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz