Serverzeit ermitteln

bernd00

Mitglied
Guten Morgen zusammen,

ich bin auf der Suche wie ich die Uhrzeit von einem anderen Rechner ermitteln kann. Ich hab eine Desktop Anwendung die sich die aktuelle Uhrzeit vom Client holt. Nur leider kann man die Uhr verstellen und somit das Programm manipulieren. Meine Idee ist nun die aktuelle Uhrzeit von einem Server im LAN zu nehmen und im Programm weiter zuverarbeiten, anstatt vom System. Leider weiß ich nicht wie ich das machen soll. Google bringt mir leider keine Ergebnisse für Java...

Jemand einen Tipp für mich?

MfG
 
Hi

Kommt auf den Server an...was ist das für einer?
Irgendwas selbstgeschriebenes, ein NTP-Server, oder...?

Zu spezielleren Sachen wird man nicht immer fertige Lösungen finden,
da muss man eben selbst ein paar Zeilen schreiben.
Socketverbindung auf, Daten holen, Verbindung zu, je nach Servertyp anders auswerten.
 
Hi,

da habe ich mich wohl etwas unverständlich ausgdrückt, sorry. Es ist lediglich ein Windows Server 2003 als Domänencontroller mit ADS.
Bei allen XP Rechner wird die Uhrzeit automatisch vom DC gesetzt, ändere ich die ab, wird die automatisch zurückgesetzt. Das funktioniert aber nicht bei Windows 7.
Ich hätte auch noch Windows Server 2008, aber da weiß ich nicht wie ich das NTP einrichten kann, es gibt dort auch keinen W32Time Dienst. (Bin da leider kein Experte)

Am schönste wäre es, wenn die Uhrzeit nicht geändert werden kann, leider müssen auf einigen W7 Rechner die Rechte so gesetzt sein. Die Uhr kann man dann ändern, würde ich über GPO die Zeiteinstellungen sperren geht das nur mit Hauptbenutzerrechten, allerdings funktionieren dann andere Programme nicht, die mehr Rechte benötigen. Darum die Idee die Uhr eines anderen Rechners, indem Fall vom DC, zu nehmen.

Bei jedem Anmelden am DC wird sowieso schon die Uhrzeit einmal gesetzt mit
Code:
net time \\Servername /set /yes
Das funktioniert super. Ich könnte das auch vom Java Programm aufrufen, aber ich hoffe es gibt eine bessere Lösung.

Ich kann mir schon vorstellen, dass ich statt System.currentTimeMillis() nicht einfach Server.currentTimeMillis() machen kann, hab es auch nicht getestet :D.
Vielleicht hat jemand einen schnellen Tip, wie das geht.
 
Zurück