Obtenez de l'internet de temps en delphi
je veux obtenir de l'heure et de la date à partir d'internet
j'ai utilisé le code suivant
IdDayTime1.ReadTimeout := 5000;
IdDayTime1.Host := 'www.time.windows.com';
IdDayTime1.Port := 37 ;
Label1.Caption := IdDayTime1.DayTimeStr;
mais j'obtiens : erreur de socket # 11004
quoi est-ce et qu'ai-je fait de mal
mon internet et d'autres choses sont ok
time.windows.com est pris en charge par ntp.org qui, autant que je sache seulement prend en charge le protocole NTP. Si vous aimez jouer avec les anciennes procols, serveurs NIST (nist.gov/pml/div688/grp40/its.cfm) encore en charge de Jour et de l'Heure de protocoles.
Je vois de nombreux d'autres choses ne sont PAS ok.
J'ai entendu dire que time.windows.com avait été arrêté
travaille toujours pour moi, si. @Vibeeshan: +1 parce que je ne comprends pas pourquoi quelqu'un downvoted vous. J'ai essayé (en vain) de faire des choses comme ce travail avant, donc c'est une très bonne question. (Non pas que Idsandon la méthode fonctionne pour moi non plus, mais la question reste valable.)
ouais time.windows.com est fine, a été clairement parler d'une charge de bêtises!
Je vois de nombreux d'autres choses ne sont PAS ok.
J'ai entendu dire que time.windows.com avait été arrêté
travaille toujours pour moi, si. @Vibeeshan: +1 parce que je ne comprends pas pourquoi quelqu'un downvoted vous. J'ai essayé (en vain) de faire des choses comme ce travail avant, donc c'est une très bonne question. (Non pas que Idsandon la méthode fonctionne pour moi non plus, mais la question reste valable.)
ouais time.windows.com est fine, a été clairement parler d'une charge de bêtises!
OriginalL'auteur VibeeshanRC | 2010-11-28
Vous devez vous connecter pour publier un commentaire.
La journée protocole n'est pas le NTP protocole. Journée utilise le port 13, pas 37. 37 est utilisé par le Le temps protocole, ce qui, à nouveau, pas le protocole NTP, qui utilise 123 (UDP). Je ne sais pas si time.windows.com prend en charge la Journée et Temps protocoles, la commune la plus utilisée protocoles pour obtenir des temps à partir d'une source de temps fiable de nos jours est NTP, et sa plus simple frère SNTP, qui a remplacé à la fois de Jour et de l'Heure de protocoles.
Indy
composant doit-on utiliser?TIdDayTime
,TIdDayTimeUDP
, ouTIdSNTP
?Sauf si vous avez le soutien de quelques vieux serveur en utilisant les protocoles plus anciens, le composant à utiliser est TidSNTP
nous devons utiliser IdSNTP avec l'hôte : pool.ntp.org port :123 c'est tout
Oui,
TIdSNTP
fonctionne avecse.pool.ntp.org
. Le codeDateTimeToStr(IdSNTP1.DateTime);
retourne1942-08-05 01:48:22
Rejbrand essayez seulement de l'utilisation de 'pool.ntp.org" comme l'hôte de son ok pour moi
OriginalL'auteur
Socket error 11004 signifie "adresse incorrecte". Vous avez besoin de se débarrasser de la www. préfixe, la bonne adresse est time.windows.com.
Hey merci, mais une autre erreur: # 10060 délai de connexion
oui bit defender m'a demandé ; mais j'ai cliqué ;
J'ai essayé plusieurs serveurs de temps, et nul ne fonctionne, donc ce n'est pas un problème avec time.windows.com plus précisément, au moins.
j'ai aussi essayé de nombreux sur le net, mais aucun d'entre eux travaillaient eg 'time.nist.gov' ,
OriginalL'auteur Paul-Jan
Voici un code simple qui montre l'utilisation de la idSNTP composants
SNTPClient.SyncTime;
remplacé parShowMessage(DateTimeToStr(SNTPClient.DateTime));
- je obtenir1942-08-05 17:13:16
.Cela devrait fonctionner. Post un exemple complet de votre code et on peut essayer de travailler sur ce qu'il se passe.
OriginalL'auteur Mike Taylor
Si vous avez le Temps et la Date d'utilisation Indy IdSNTP composant et définir:
host: time.windows.com
et sur événement Timer1Timer (TTimer composant) écrire:
que vous voyez sur la forme (labe1, label2) Date ET de l'Heure maintenant. Donc, si vous définissez synchronisée dans le Temps
mettre
IdSNTP1.SyncTime;
en cas Timer1Timer.OriginalL'auteur José C. Bretas
Essayez d'utiliser l'Indy client ntp composants avec le protocole ntp pool.org les serveurs. Fonctionne pour moi si vous avez le moindre soucis, je vais poster un exemple de code.
(0.)se.pool.ntp.org ne fonctionne pas pour moi non plus.
J'ai juste essayé avec time.windows.com et de l'italien, de l'heure officielle (IEN) et ça fonctionne sans problèmes. À L'Aide D'Indy 10.5.5
en fait, pool.ntp.org est DNS round-robin, ce qui a entraîné l'horodatage de la qualité varie de façon aléatoire
Je sais, mais je n'ai pas l'intention pour la production de code juste un exemple. Si vous avez besoin de précision lors de l'utilisation de l'un de leur strate 1 domaines de votre emplacement géographique.
OriginalL'auteur Mike Taylor