Pobieranie dokładnego czasu i protokol ntp

0

Witajcie

potrzebuje w moim programie zalogowac sie na jakis serwis ktory podaje dokladna godzine i pobrac czas tak zeby uaktualnic systemowy zegar

znalazlem wlasciwie strone ktora dziala w protokole http ale chcialbym wiedziec czy istnieje mozliwosc podlaczenia sie do serwera ntp i jak to w C# wyglada ?

czy tak samo jak z http ? z uzyciem WebRequest i WebResponse ?

0

Raczej tak, nie ma chyba osobnej klasy do obslugi serwerow czasowych (choc nie dam sobie reki uciac).

0

OK, wiem juz jak laczyc sie serwerem NTP.

problem pojawil sie z synchronizacja czasu. lacze sie i powiedzmy ze pobrany czas sie zgadza z zegarami na stronach www. ale po jakich 2 minutach zegar z serwera NTP jakby sie cofal i mam 126 sekund opoznienia wedle wlasnego wczesniej ustawionego zegara. potem znow po okolo 2 minutach czas sie "naprawia" i jest znow ok. i tak w kolko.

w czym tkwi szkopul ? serwer NTP z ktorym sie lacze jest Stratum 1 lub 2. wiem ze jest jakis offset w czasie ale jak go mam pobrac i skad ?

bede wdzieczny za jakies sugestie.

0

znalazlem odpowiedz wiec sobie sam odpowiem :)

otoz z datagramu NTP trzeba jeszcze wydobyc info o RootDelay i RootDispersion :)

0

Witam, nie chce tworzyć nowego tematu dlatego w tym zapytam, czy mógłby mi ktoś powiedzieć do jakiej metody musiałbym się odwołać w visual studio żeby pobrać czas z takiego serwera? pytam, ponieważ piszę apkę w której będzie pewne zabezpieczenie czasowe w sensie user dostaje bana na 24h i przez tyle czasu normalnie ma zablokowany dostęp, czas pobierany jest z lokalnego komputera, no ale tutaj rozkminiłem łatwe rozwiązanie, w sensie jak user bystry to sobie przestawi zegar w komputerze o 24h do przodu, włączy aplikację no i blokada zostanie zdjęta, przywróci czas do poprzedniego stanu i po kłopocie.. dlatego chciałbym pobrać czas z serwera żeby tam był sprawdzany, wtedy już tego czasu by nie ominął

0

dzięki :), dodałem jeszcze +1h żeby wskazywało na poprawną godzinę:)

0
Czarny Kaczor napisał(a):

dodałem jeszcze +1h żeby wskazywało na poprawną godzinę:)

to niezbyt sprytny pomysł, w lecie będziesz musiał przepisać program na +2h, a w zimę znowu na +1
lepiej pobieraj aktualną strefę i oznaczenie czasu letniego

0

a mógłbyś mi podpowiedzieć jak to mogę zrobić?? trochę po googlowałem i znalazłem jak pobrać z kompa strefę czasową, ale to drugie odnośnie czasu letniego to nie wiem czy dobrze, pokażę poniżej kod z odpowiedzią:

MessageBox.Show("Strefa czasowa: " + TimeZoneInfo.Local); // okno do wyświetlenia komunikatu
Strefa czasowa: (UTC +1:00) Sarajewo, Skopie, Warszawa, Zagrzeb  // komunikat zwrotny

TimeZone localZone = TimeZone.CurrentTimeZone;   // TimeZone i przypisanie obecnej strefy czasowej chyba
MessageBox.Show(localZone.DaylightName);  // okno do wyświetlenia komunikatu

Środkowoeuropejski czas letni   // komunikat z tego ostatniego czyli wskazuje na czas letni, jak przeskoczy na zimowy tzn. któregoś tam wypada na przestawienie zegara to podmieni na: Środkowoeuropejski czas zimowy   ??? no i żeby rozpoznać jakie są czasu to najlepiej gdybym zrobił to w warunku sprawdzającym treść tego komunikatu ?? jak taki to letni +1 a jak zimowy to podmianka na -1?? 
0

(Szkoda, że nie ma opcji edycji).

Tak przeglądałem inne strony i natrafiłem chyba na kolejny problem dotyczący tych dat. W moim programie będzie ranking punktacji z zadań i będzie tam podana data oraz punkty no i tutaj pytanie czy data będzie wprowadzana zależnie od położenia na świecie taka sama? czy raczej będzie to patrzyło na ten serwer polski z którego pobierać będę czas? Np. będąc w Londynie to tam jest np +X godzin, a w polsce -X godzin jakby patrzeć z tamtej strony no i na tej liście będą różne czasy oczywiście tylko jeśli ktoś zrobi zadanie w ciągu 10 minut od siebie to czy nie pokaże punktów z różnicą paru godzin plus tych parę minut. ? W poniższym linku osoba pisała, coś o UTC i żeby z nią jakoś kombinować co do różnicy czasu:

http://www.maciejaniserowicz.com/2010/02/22/przechowujesz-date-i-czas-moze-warto-w-utc/

1 użytkowników online, w tym zalogowanych: 0, gości: 1