Форум: "Начинающим";
Текущий архив: 2007.11.04;
Скачать: [xml.tar.bz2];
ВнизКак с помощью Delphi можно связаться с сервером точного времени? Найти похожие ветки
← →
Err_f (2007-10-09 20:10) [0]Как присвоить переменной "s" точное значение времени, используя один из серверов в Интернете? Чтобы в дальнейшем использовать это значение для синхронизации системных часов
...
DecodeDate(DateTimePickerSys.DateTime, s.wYear,s.wMonth,s.wDay);
if not SetSystemTime(s) then RaiseLastOSError;
...
← →
Err_f (2007-10-09 20:57) [1]Вычитал про:
"TIdDayTime и TIdDayTimeServer"
по описанию - то, что надо...
но как ими воспользоваться... ни одного примера... (((
даже - чем отличается: TIdDayTime от TIdDayTimeServer?
← →
Anatoly Podgoretsky © (2007-10-09 21:13) [2]> Err_f (09.10.2007 20:57:01) [1]
Описания надо искать в RFC, только надо понять какая из трех базовых технологий используется в этих методах.
← →
Err_f (2007-10-09 21:30) [3]Хм...
вопросов больше, чем ответов...
Может FastNet восстановить, с ними хоть что-то есь!
← →
easy © (2007-10-09 21:37) [4]http://dfc.com.ru/?sid=2&id=9&itemid=34
← →
Anatoly Podgoretsky © (2007-10-09 21:37) [5]А у тебя, что Д6-?
На самом деле не требуется для этого никакого монстра в виде Инди, достаточно любых легких компонент работающих с сокетами, там все просто.
← →
йопцопцоп (2007-10-10 08:51) [6]
unit uGetSetTime;
interface
uses
Windows, SysUtils, Classes, IdComponent, IdTCPConnection, IdTCPClient, IdTime,
IdBaseComponent;
implementation
procedure SetTime;
var
iT: tIdTime;
CurrTime: TDateTime;
st: TSystemTime;
YY,MM,DD,HH,NN,SS,MS: Word;
begin
iT := tIdTime.Create(nil);
iT.Host := "ntps1-0.uni-erlangen.de";
CurrTime := iT.DateTime;
iT.Free;
GetLocalTime(st);
DecodeDate(CurrTime,YY,MM,DD);
DecodeTime(CurrTime,HH,NN,SS,MS);
st.wYear := YY;
st.wMonth := MM;
st.wDay := DD;
st.wHour := HH;
st.wMinute := NN;
st.wSecond := SS;
st.wMilliseconds := MS;
SetLocalTime(st);
end;
end.
← →
Err_f (2007-10-10 11:57) [7]Запускаю - пишет:
"... raised exception class EIdSocketError with message "Soket Error # 10060 Connection timed out.". ..."
ошибка возникает после длительного зависания программы на строке:CurrTime := iT.DateTime;
В чём может быть дело? Поменять iT.Host, или требуется открыть какой-то порт? Или надо как-то предварительно настроить компоненты:IdComponent, IdTCPConnection, IdTCPClient, IdTime, IdBaseComponent
- что-то прописать в инспекторе объектов?
← →
йопцопцоп (2007-10-13 11:12) [8]
> - что-то прописать в инспекторе объектов?
Приложение-то консольное. Какой инспектор объектов?
Конечно сменить хост. Значит тот, который прописан был, не отвечает, либо порты закрыты.
Какой порт - смотри в исходниках. На память не помню.
← →
Anatoly Podgoretsky © (2007-10-13 12:48) [9]TIdTime is a client implementation of the Time Protocol as described in the Internet Standards document:
RFC 868 - Time Protocol (http://www.rfc-editor.org/rfc/rfc868.txt)
Time is a simple protocol for synchronizing time on a local network. For a time protocol with higher accuracy over several networks, use TIdSNTP. To retrieve the current date and time in human-readable form, use TIdDayTime.
Please note that the Time Protocol in its current form cannot handle most dates after the year 2035. This limitation is stated in RFC 868.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.04;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.046 c