| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
ZHAX1 Master

Registrado: 09 Mar 2007Mensajes: 191
|
Publicado: Lun 26 Oct, 2009 11:28 am Asunto: funcion gmtime no funciona bien, help |
|
|
| Código: |
double sec;
int horas,diagmt,dianormal;
time_t t;
struct tm *gmt,*normal;
int hnormal,hgmt;
t = time(NULL);
gmt = gmtime(&t);
hgmt=gmt->tm_hour;
diagmt=gmt->tm_mday;
normal=localtime(&t);
hnormal=normal->tm_hour;
dianormal=normal->tm_mday;
if(diagmt==dianormal)
{
horas=hnormal-hgmt;
}
else
{
if(hnormal==0||hnormal==1)
{
if(hnormal==0)
{
if(hgmt==22) horas=2;
if(hgmt==23) horas=1;
}
if(hnormal==1)
{
if(hgmt==23) horas=2;
if(hgmt==0) horas=1;
}
}
else
{
horas=hnormal-hgmt;
}
}
Edit1->Text=horas;
|
Este código escribe en el cuadro de tecto la diferencia de horas entre la hora local y la hora gmt.
Si el windows esta configurado con el cambio de hora automático, en el horario de invierno me sale una diferencia de 2 horas entre local y gmt, cuando yo estando en gmt +1 deberia salirme una hora.
¿Alguien puede decirme como obtener la hora gmt de otra forma? Gracias. |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
ZHAX1 Master

Registrado: 09 Mar 2007Mensajes: 191
|
Publicado: Mar 27 Oct, 2009 1:10 pm Asunto: gracias |
|
|
Gracias, lo probaré, de momento lo solucione con una consulta al servidor sql server de microsoft
select getutc()
que devuelve la hora gmt 0.
Saludos. |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
Publicado: Mie 28 Oct, 2009 9:44 am Asunto: Re: gracias |
|
|
| ZHAX1 escribió: | | Gracias, lo probaré, de momento lo solucione con una consulta al servidor sql server de microsoft |
Pero ¿no te obliga eso a estar conectado a la red cunado haces la consulta? _________________ Un saludo
Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA) |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Mie 28 Oct, 2009 11:32 am Asunto: |
|
|
Realizando esta rutina, sacada de la ayuda de Builder y sin mas modificaciones que para ejecutarla en BCB me imprime correctamente la hora y la información GMT sin ningun problema.
| Código: | //---------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
char *tzstr = "TZ=PST8PDT"; // verifica usando esto
int main(int argc, char* argv[])
{
time_t t;
struct tm *gmt, *area;
putenv(tzstr); // establecemos la cadena de ambiente, para la fecha
tzset();
t = time(NULL);
area = localtime(&t);
int iLocalHora = area->tm_hour;
int iLocalMinu = area->tm_min;
printf("Tiempo Local: %s", asctime(area));
gmt = gmtime(&t);
int iGMTHora = gmt->tm_hour;
int iGMTMinu = gmt->tm_min;
printf(" Tiempo GMT: %s", asctime(gmt));
printf("\nDiferencia en horas %d:%d", iGMTHora - iLocalHora, iGMTMinu - iLocalMinu);
getch();
return 0;
}
//--------------------------------------------------------------------------- |
_________________
 |
|
| Volver arriba |
|
 |
ZHAX1 Master

Registrado: 09 Mar 2007Mensajes: 191
|
Publicado: Jue 29 Oct, 2009 9:36 am Asunto: |
|
|
¿la cadena ambiente para España cual seria?
Respondiendo a Angel, si, me obliga a estar conectado a un servidor sqlserver, que en este caso me es válido para mi programa.
Gracias. |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
Publicado: Jue 29 Oct, 2009 10:29 am Asunto: |
|
|
| ZHAX1 escribió: | | ¿la cadena ambiente para España cual seria? |
¿A qué te refieres con esto?
| ZHAX1 escribió: | | Respondiendo a Angel, si, me obliga a estar conectado a un servidor sqlserver, que en este caso me es válido para mi programa. |
Gracias por la aclaración. _________________ Un saludo
Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA) |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Jue 29 Oct, 2009 5:36 pm Asunto: |
|
|
Al Final de este enlace, puedes determinar el tipo de cadena de ambiente
Algo mas de información
- Link 1
- Link 2 _________________
 |
|
| Volver arriba |
|
 |
ZHAX1 Master

Registrado: 09 Mar 2007Mensajes: 191
|
Publicado: Vie 30 Oct, 2009 9:28 am Asunto: |
|
|
| gracias |
|
| Volver arriba |
|
 |
|