| Usuario |
RELOJ DE SERVIDOR |
Desconocido
|
| Enviado - 22/10/2003 |
| |
HOLA:
ESTOY HACIENDO UNA APLICACION EN VB6 CON EL GESTOR DE SQL, QUIERO OBTENER LA HORA DEL SERVIDOR EN UN LABEL ¿COMO PUEDO HACERLO?
GRACIAS |
| |
|
zervezator
49 Mensaje(s)
|
| Enviado - 23/10/2003 |
| |
Hola
Incluye las declares, definición de tipos y la función en un modulo:
Private Declare Function NetRemoteTOD Lib "NETAPI32.DLL" (ByVal server As String, buffer As Any) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long)
Private Declare Function NetApiBufferFree Lib "NETAPI32.DLL" (buffer As Any) As Long
Private Type TIME_OF_DAY
t_elapsedt As Long
t_msecs As Long
t_hours As Long
t_mins As Long
t_secs As Long
t_hunds As Long
t_timezone As Long
t_tinterval As Long
t_day As Long
t_month As Long
t_year As Long
t_weekday As Long
End Type
Function FechaHoraServidor(ByVal strServidor As String) As Variant
Dim lngtPtr As Long, lngRes As Long, strServ As String, datServidor As Date, t As TIME_OF_DAY
strServ = StrConv(strServidor, vbUnicode)
lngRes = NetRemoteTOD(strServ, lngtPtr)
If lngRes = 0 Then
Call CopyMemory(t, ByVal lngtPtr, Len(t))
datServidor = DateSerial(70, 1, 1) + (t.t_elapsedt / 60 / 60 / 24)
datServidor = datServidor - (t.t_timezone / 60 / 24)
NetApiBufferFree (lngtPtr)
FechaHoraServidor = datServidor
Else
FechaHoraServidor = ""
End If
End Function
La llamada a la función debe ser de la siguiente manera:
Dim strRes As String
strRes = FechaHoraServidor("\\NombreServidor")
No te olvides de poner delante del nombre del servidor el doble barrado.
Saludos
|
| |
|
|
|