Determinar Fecha del Cambio de hora

Iniciado por Leiray, 6 Abril 2018, 02:03 AM

0 Miembros y 1 Visitante están viendo este tema.

Leiray

Saludos.

Hace unos días que estoy realizando un trabajo y necesito calcular la fecha del cambio de hora, osea lo mismo que nos hace Windows en el reloj, nos informa cuando será esa fecha, yo necesito un código en VB.NET que me devuelva esa fecha.

Grcias.

srWhiteSkull

No existe un cálculo para eso, cada región tiene su fecha para el cambio de hora. El algoritmo simplemente consulta una base de datos.

https://es.wikipedia.org/wiki/Horario_de_verano_en_el_mundo

Leiray

Gracias hermano, pero lo que estoy buscando es el código fuente, no la información de cuando cambia. Necesito el código en VB.NET para saber la fecha exacta de cuando cambia.

Serapis

Me temo que no has leído correctamente a srWhiteSkull...

Debes guardarte en un fichero, array o base datos, una tabla de países y fechas, para horario el cambio de verano (mes, día, hora y cuantas horas cambia) y el de invierno (mes, día, hora y cuantas horas cambia). NOTA: que el cambio es decidido por el gobierno de cada país, no hay estándard ni nada reglado, y por lo msmo, pueden decidir que cambia solo una hora, 2, 3... o que no cambia.

Luego en tu código, cuando arranca tu programa, lees de la configuración del sistema la 'region' (país) que tiene indicada el S.O. (puedes cambiar la región en tu equipo a través del panel de control). Luego tu buscar en tu array, fichero, base de datos, la configuacion para ese país que tienes guardado, así sabes la fecha exacta de cambio.

Para cambiarla cuando toca, requiere además, verificar la fecha actual (hoy), y si es el caso, programar un evento para la hora del cambio supongamos que fuera a la 03:00, pués cuando salte el evento (primero se desactiva ya la programación del evento) se cambia, si hay que adelantar, se adelanta o si hay que atrasar se atrasa, sumando o restando las horas del cambio.