Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - leggere data e ora da internet
Forum - Visual Basic 6 - leggere data e ora da internet

Avatar
bixbicio (Normal User)
Newbie


Messaggi: 2
Iscritto: 15/11/2019

Segnala al moderatore
Postato alle 19:32
Venerdì, 15/11/2019
Ciao a tutti... innanzitutto chiedo scusa se l'argomento è già stato discusso nel passato... ho cercato nel forum ma non mi pare di aver trovato nulla

il mio micropc inizia a fare le bizze e non carica piu bene la batteria tampone per cui l'orologio interno rimane sempre indietro... ho cambiato diverse batterie ma nulla da fare

su questo PC gira un programmino domotico che ho fatto io in VB6 e ovviamente il clock che non si aggiorna correttamente è un bel problema...

per risolvere senza cambiare il pc pensavo di aggiungere una routine al mio programma che periodicamente leggesse l'ora da internet e aggiustasse il clock se necessario...

qualcuno avrebbe qualche esempio di routine in VB6 per leggere l'ora da internet?

ringrazio in anticipo

Fabrizio

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6379
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 20:11
Venerdì, 15/11/2019
Lo fa il sistema operativo se correttamente configurato.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
bixbicio (Normal User)
Newbie


Messaggi: 2
Iscritto: 15/11/2019

Segnala al moderatore
Postato alle 18:39
Martedì, 19/11/2019
dovrebbe farlo... ma non mi chiedere perchè non lo fa... quando chiedo la data e l'ora con i classici comandi di vb6, mi risponde con la data di sistema (quella mantenuta viva dalla batteria tampone) che non è piu affidabile...

per questo vorrei leggere la data di internet per confrontarla con la data di sistema ed eventualmente correggerla

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6379
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 19:20
Martedì, 19/11/2019
Io ti consiglio di rimediare al problema della sincronizzazione con il SO.

Di quale sistema si tratta e come è configurato?

In ogni caso, codice del genere lo trovi ovunque ...

Codice sorgente - presumibilmente VB.NET

  1. Public Function GetTime(Optional utc As Boolean) As String
  2.     Dim SvrName, xPost, HttpAdd, NowTime, StartTime
  3.  
  4.     StartTime = Now
  5.     NowTime = ""
  6.    
  7.     Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
  8.     Set colTimeZone = objWMIService.ExecQuery("Select * from Win32_computersystem")
  9.     For Each objTimeZone In colTimeZone
  10.         offset = objTimeZone.currenttimezone
  11.     Next
  12.    
  13.     Set xPost = CreateObject("Microsoft.XMLHTTP")
  14.     xPost.Open "Put", "http://time.nist.gov:13", False
  15.     xPost.Send
  16.    
  17.     If xPost.readyState = 4 Then
  18.         NowTime = Mid(xPost.responsetext, 8, 17)
  19.         If NowTime <> "" Then
  20.             NowTime = Mid(NowTime, 7, 2) & Mid(NowTime, 3, 4) & Left(NowTime, 2) & Mid(NowTime, 9)
  21.             NowTime = CDate(NowTime)
  22.             If Not utc Then NowTime = CDate(NowTime) + offset / 60 / 24
  23.             GetTime = NowTime
  24.         Else
  25.             xPost.abort
  26.         End If
  27.     End If
  28.  
  29.     If DateDiff("s", StartTime, Now) >= 10 And NowTime = "" Then
  30.         GetTime = "Problemi nella connessione Internet"
  31.     End If
  32.  
  33.     Set xPost = Nothing
  34. End Function




Ultima modifica effettuata da nessuno il 19/11/2019 alle 20:01


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote