
08-09-2006, 21:13:54
|
 | Buena Participación en el Foro | | Registrado: dic 2004 Ubicación: Huelva Posts: 60
| |
Gracias jrios03 por tu respuesta.
Lo intenté con el que me dijiste pero no me iba. Quizá fuera culpa mía...
Al final lo conseguí de esta manera a partir de esta página: http://tycho.usno.navy.mil/cgi-bin/timer.pl
Espero que alguna vez le pueda servir a alguien Cita:
Private Const INTERNET_OPEN_TYPE_PRECONFIG = 0
Private Const INTERNET_OPEN_TYPE_DIRECT = 1
Private Const INTERNET_OPEN_TYPE_PROXY = 3
Private Const scUserAgent = "VB Project"
Private Const INTERNET_FLAG_RELOAD = &H80000000
Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Private Declare Function InternetOpenUrl Lib "wininet.dll" Alias "InternetOpenUrlA" (ByVal hOpen As Long, ByVal sUrl As String, ByVal sHeaders As String, ByVal lLength As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Private Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
Private Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
Public hora_local As String
Sub OnSynchro()
Dim hInternet As Long
Dim hHttp As Long
Dim bRet As Boolean
Dim sBuff As String * 2048
Dim lNumberOfBytesRead As Long
Dim sBuffer, hora, dia, mes, año As String
hInternet = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_PRECONFIG, _
vbNullString, vbNullString, 0)
If hInternet = 0 Then Debug.Assert (0)
hHttp = InternetOpenUrl(hInternet, "http://tycho.usno.navy.mil/cgi-bin/timer.pl", vbNullString, 0, _
INTERNET_FLAG_RELOAD, 0)
DoEvents
If hHttp = 0 Then MsgBox "No hay conexión a Internet." & Chr(13) & Chr(13) & "Fecha no actualizada.", vbExclamation, "Problema de conexión": Exit Sub
sBuff = vbNullString
bRet = InternetReadFile(hHttp, sBuff, Len(sBuff), lNumberOfBytesRead)
sBuffer = sBuffer & Left$(sBuff, lNumberOfBytesRead)
hora_local = Mid(sBuffer, InStr(1, sBuffer, "UTC") - 18, 17)
mes = Mid(hora_local, 1, 3)
dia = Mid(hora_local, 6, 2)
hora = Mid(hora_local, 10)
End sub
|
__________________ |