In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

¿Cómo se obtiene la hora del servidor?

Foro público de Xailer en español
Responder
Fernando Leal
Mensajes: 294
Registrado: Jue Mar 13, 2008 3:03 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Fernando Leal »

Tengo un windows server 2003
Gracias
Fernando
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

Fernando,
Se me ocurre que puedes "sincronizar" el reloj del ordenador con el
Servidor...
WinExec( "NET TIME " + cNombreServidor + " /SET /YES", SW_HIDE, .T. )
Un Saludo,
Xevi.
"Fernando Leal" <visitante32@hotmail.com> escribió en el mensaje de noticias
news:[email=49b5d5c8@svctag-j7w3v3j....]49b5d5c8@svctag-j7w3v3j....[/email]
> Tengo un windows server 2003
>
> Gracias
> Fernando
>
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

¿Cómo se obtiene la hora del servidor?

Mensaje por juanc »

Que buen Tip Xevi ! :-) No cabe duda que en la linea de comandos esta toda
una caja de monerias.

Saludos Cordiales

Juan Castillo Arteaga.
"Xevi" <[email=xevicomas_quitaresto@gmail_quitaresto.com]xevicomas_quitaresto@gmail_quitaresto.com[/email]> escribió en el mensaje
news:49b62fb0$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Fernando,
>
> Se me ocurre que puedes "sincronizar" el reloj del ordenador con el
> Servidor...
>
> WinExec( "NET TIME " + cNombreServidor + " /SET /YES", SW_HIDE, .T. )
>
>
>
> Un Saludo,
> Xevi.
>
>
> "Fernando Leal" <visitante32@hotmail.com> escribió en el mensaje de
> noticias news:[email=49b5d5c8@svctag-j7w3v3j....]49b5d5c8@svctag-j7w3v3j....[/email]
>> Tengo un windows server 2003
>>
>> Gracias
>> Fernando
>>
>
Rene Flores
Mensajes: 620
Registrado: Jue Mar 23, 2006 2:39 am

¿Cómo se obtiene la hora del servidor?

Mensaje por Rene Flores »

Fernando:
Si tienes ADS usas AdsGetServerTime()
Si no tienes ADS usas como dijo Xevi un NET TIME si haces:
NET TIME servidor > arch.txt
en Arch.txt tienes la hora del servidor.
Obvio tienes que estar conectado al servidor (firmado) para poder
obtener estos datos
Saludos
Rene Flores
http://www.ciber-tec.com
Leal escribió:
> Tengo un windows server 2003
>
> Gracias
> Fernando
>
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

Rene,
¿Cómo puedo ejecutar, desde Xailer, WinExec() en Windows VISTA con permisos
de administrador???
Un Saludo,
Xevi.
"Rene Flores" <"rflores[nospam]"@ciber-tec.com> escribió en el mensaje de
noticias news:[email=49b6a7bf@svctag-j7w3v3j....]49b6a7bf@svctag-j7w3v3j....[/email]
> Fernando:
>
> Si tienes ADS usas AdsGetServerTime()
>
> Si no tienes ADS usas como dijo Xevi un NET TIME si haces:
>
> NET TIME servidor > arch.txt
>
> en Arch.txt tienes la hora del servidor.
>
> Obvio tienes que estar conectado al servidor (firmado) para poder obtener
> estos datos
>
> Saludos
>
> Rene Flores
> http://www.ciber-tec.com
>
> Leal escribió:
>> Tengo un windows server 2003
>>
>> Gracias
>> Fernando
>>
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »


Fernando,
si los puestos usan de NT para arriba, puedes probar el OBJ adjunto (está
compilado para Xailer 2).
Se usa así­:
WITH OBJECT TServerInfo():Create()
:cServer := "NombreDelServidor"
MsgInfo( :cDate ) // formato yyyymmdd como en DToS()
MsgInfo( :cTime ) // formato hh:mm:ss
END
PD: ¿Has probado los cambios que te dije para el lector de huellas?
Saludos,
José Lalí­n
--
Fernando Leal
Mensajes: 294
Registrado: Jue Mar 13, 2008 3:03 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Fernando Leal »

Estupendo,
Gracias Xevi
Fernando Leal
Mensajes: 294
Registrado: Jue Mar 13, 2008 3:03 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Fernando Leal »

Gracias Rene,
Esto de la hora es para guardar la hora del servidor y no de la PC donde se
ha ejecutado el EXE, pero me acaban de confirmar que en provincia ninguna de
las sucursales tiene Red :-)
Solo PCs y ni siquiera están conectadas entre si.
Saludos
Fernando Leal
Mensajes: 294
Registrado: Jue Mar 13, 2008 3:03 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Fernando Leal »

Hola José.
Voy a probar.
En cuanto al lector de huella sigue regresando vací­o el buffer. Me refiero
al template de la huella.
Saludos
Fernando
Diego Ferreira
Mensajes: 148
Registrado: Mar Dic 18, 2007 4:39 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Diego Ferreira »

Yo obtengo la hora y la fecha desde el servidor de MySQL haciendo un...
::oSQLDataSource:Execute( "SELECT CURDATE(), CURTIME()",, aFechaHora )
o las 2 juntas con SELECT NOW()
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

José,
¿Puedes compilarlo para utilizarlo con la 1.98???
Gracias.
Un Saludo,
Xevi.
"José Lalín" <notengo@correo.com> escribió en el mensaje
news:[email=49b6f2f4@svctag-j7w3v3j....]49b6f2f4@svctag-j7w3v3j....[/email]
>
> Fernando,
>
> si los puestos usan de NT para arriba, puedes probar el OBJ adjunto (está
> compilado para Xailer 2).
>
> Se usa así:
>
> WITH OBJECT TServerInfo():Create()
> :cServer := "NombreDelServidor"
> MsgInfo( :cDate ) // formato yyyymmdd como en DToS()
> MsgInfo( :cTime ) // formato hh:mm:ss
> END
>
> PD: ¿Has probado los cambios que te dije para el lector de huellas?
>
> Saludos,
> José Lalín
>
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »

Fernando,
> En cuanto al lector de huella sigue regresando vací­o el buffer. Me
> refiero al template de la huella.
¿Pero aplicaste el cambio para pasar el parámetro por referencia como te
comenté por email?
Saludos,
José Lalí­n
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »

Xevi,
> ¿Puedes compilarlo para utilizarlo con la 1.98???
Esta noche subiré el fuente completo, así­ podeis usarlo con independencia
de la versión de Xailer.
De todos modos, os comento que lo he escrito leyendo la documentación y no
lo he probado por lo que puede que necesite algún ajuste.
Saludos,
José Lalí­n
Fernando Leal
Mensajes: 294
Registrado: Jue Mar 13, 2008 3:03 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Fernando Leal »

Hola José,
No es posible usarlo como indicas.
LOCAL ntptSize := 1000 // Puede ser cualquier otro varlor numérico.
LOCAL atpt := Space( ntptSize )
El ntptSize cambia su valor al pasarlo a la función Extract.
El atpt de inicio debe contener 1000 espacios por que la huella ronda entre
los 500 y los 600 caracteres. Asi que se pone a 1000 para que tenga espacio
de sobra.
El Extract recibe atpt con mil espacios y un ntptSize que vale 1000
De regreso, se supone que atpt sigue midiendo mil espacios pero ahora
contiene caracteres. Para saber cuanto caracteres hay Extract regresa
ntptSize con un número diferente de 1000.
Entonces tan fácil como hacer cTemplate := SubStr( atpt,1,ntptSize)
cTemplate ahora con info se puede guardar en la DBF.
::oOcx:Extract( cHuella, nwidth, nheight, nres, @atpt, @ntptSize, 0 )
Pero atpt siempre regresa los 1000 espacios vacios. En una versión más
reciente de Xailer el ntptSize ya regresa un valor distinto de mil... antes,
ese valor no cambiaba su valor.
Uso la 2.0
Saludos
Fernando
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »

Fernando,
> ::oOcx:Extract( cHuella, nwidth, nheight, nres, @atpt, @ntptSize, 0 )
¿Puedes poner la sintaxis del método Extract() tal como está en la
documentación del OCX?
Saludos,
José Lalí­n
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »


Xevi, Fernando,
adjunto un ZIP con el fuente del componente TServerInfo.
Para usarlo:
WITH OBJECT TServerInfo():New()
:cServer := "..."
MsgInfo( :cDate )
MsgInfo( :cTime )
END
Probadlo y avisadme si hay algún error o necesita alguna mejora.
Saludos,
José Lalí­n
--
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

José,
En mi prueba... desde Vista (Cliente) sobre un XP (Server)... :cTime retorna
una hora menos... vaya, como si leyera un ordenador Server alojado en
Canarias, jejeje.
Un Saludo,
Xevi.
"José Lalí­n" <notengo@correo.com> escribió en el mensaje de noticias
news:49beb4d2$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Xevi, Fernando,
>
> adjunto un ZIP con el fuente del componente TServerInfo.
>
> Para usarlo:
>
> WITH OBJECT TServerInfo():New()
> :cServer := "..."
> MsgInfo( :cDate )
> MsgInfo( :cTime )
> END
>
> Probadlo y avisadme si hay algún error o necesita alguna mejora.
>
> Saludos,
> José Lalí­n
>
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »

Xevi,
> En mi prueba... desde Vista (Cliente) sobre un XP (Server)... :cTime
> retorna una hora menos... vaya, como si leyera un ordenador Server
> alojado en Canarias, jejeje.
Muy bueno ;-))
Parece que devuelve la hora en formato GMT por lo que seguramente habrá que
obtener el TZ y ajustar la hora.
Añade esta lí­nea en la función en C, después de las llamadas
XA_ObjSendNL(...) y dime qué muestra:
{
char sz[100]; sprintf( sz, "TimeZone: %i", tod->tod_timezone );
MsgDebug( sz );
}
Saludos,
José Lalí­n
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

José,
Lí­neas añadidas. Devuelve... TimeZone: -60
Creo recordar, que al restaurar ficheros zip con Vista, también habia un
problema al "estampar" la fecha al archivo restaurado.
Igual todo apunta al mismo error.
Un Saludo,
Xevi.
"José Lalí­n" <notengo@correo.com> escribió en el mensaje de noticias
news:49bec0b3$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Xevi,
>
>> En mi prueba... desde Vista (Cliente) sobre un XP (Server)... :cTime
>> retorna una hora menos... vaya, como si leyera un ordenador Server
>> alojado en Canarias, jejeje.
>
> Muy bueno ;-))
>
> Parece que devuelve la hora en formato GMT por lo que seguramente habrá
> que obtener el TZ y ajustar la hora.
>
> Añade esta lí­nea en la función en C, después de las llamadas
> XA_ObjSendNL(...) y dime qué muestra:
>
> {
> char sz[100]; sprintf( sz, "TimeZone: %i", tod->tod_timezone );
> MsgDebug( sz );
> }
>
> Saludos,
> José Lalí­n
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »

Xevi,
> Lí­neas añadidas. Devuelve... TimeZone: -60
prueba cambiando esta lí­nea:
sprintf( szTime, "%02d:%02d:%02d", tod->tod_hours, tod->tod_mins -
tod->tod_timezone, tod->tod_secs );
Intenta también cambiar la franja horaria del servidor (GMT+3, GMT-5, etc.)
para comprobar si funciona en todos los casos.
> Creo recordar, que al restaurar ficheros zip con Vista, también habia un
> problema al "estampar" la fecha al archivo restaurado.
> Igual todo apunta al mismo error.
Creo que en este caso los tiros van por otro lado.
Saludos,
José Lalí­n
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

José,
Cambiada la lí­nea...
También he probado a cambiar GMT+2, +3, +5, -1, -2...
:cTime SIEMPRE muestra una hora menos de la que tiene establecida el
Servidor.
Un Saludo,
Xevi.
"José Lalí­n" <notengo@correo.com> escribió en el mensaje de noticias
news:[email=49c02444@svctag-j7w3v3j....]49c02444@svctag-j7w3v3j....[/email]
>
> Xevi,
>
>> Lí­neas añadidas. Devuelve... TimeZone: -60
>
> prueba cambiando esta lí­nea:
>
> sprintf( szTime, "%02d:%02d:%02d", tod->tod_hours, tod->tod_mins -
> tod->tod_timezone, tod->tod_secs );
>
> Intenta también cambiar la franja horaria del servidor (GMT+3, GMT-5,
> etc.) para comprobar si funciona en todos los casos.
>
>> Creo recordar, que al restaurar ficheros zip con Vista, también habia un
>> problema al "estampar" la fecha al archivo restaurado.
>> Igual todo apunta al mismo error.
>
> Creo que en este caso los tiros van por otro lado.
>
> Saludos,
> José Lalí­n
>
> __________ Información de ESET Smart Security, versión de la base de
> firmas de virus 3943 (20090317) __________
>
> ESET Smart Security ha comprobado este mensaje.
>
> http://www.eset.com
>
>
>
__________ Información de ESET Smart Security, versión de la base de firmas de virus 3943 (20090317) __________
ESET Smart Security ha comprobado este mensaje.
http://www.eset.com
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »


Xevi,
prueba el ZIP adjunto.
Saludos,
José Lalí­n
--
Xevi
Mensajes: 1706
Registrado: Jue Sep 08, 2005 12:58 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por Xevi »

José,
Como todo tu trabajo, resumido en tres palabras...
PER FEC TO !!!
Un Saludo,
Xevi.
"José Lalí­n" <notengo@correo.com> escribió en el mensaje de noticias
news:49c17d92$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>
> Xevi,
>
> prueba el ZIP adjunto.
>
> Saludos,
> José Lalí­n
>
>
>
> __________ Información de ESET Smart Security, versión de la base de
> firmas de virus 3946 (20090318) __________
>
> ESET Smart Security ha comprobado este mensaje.
>
> http://www.eset.com
>
>
__________ Información de ESET Smart Security, versión de la base de firmas de virus 3946 (20090318) __________
ESET Smart Security ha comprobado este mensaje.
http://www.eset.com
notengo
Mensajes: 417
Registrado: Vie Oct 12, 2007 1:29 pm

¿Cómo se obtiene la hora del servidor?

Mensaje por notengo »

Xevi,
> Como todo tu trabajo, resumido en tres palabras...
> PER FEC TO !!!
Muchas gracias por la ayuda para probarlo y depurarlo. La semana que viene
lo publicaré como un componente en Xailer.info.
Saludos,
José Lalí­n
Responder