Cambiar fecha y hora

14/01/2005 - 19:35 por Jhonatas M. Rodríguez | Informe spam
saludos,


Como estan?... quiero sincronizar la hora de los clientes con el servidor y
obtengo la hora de otra pc sin problemas, el problema está cuando la quiero
cambiar uso la función API "SetSystemTime" y he usado también "SetLocalTime"
y el programa no cambia la hora, ni presenta error, ni grita nada!!!. He
revisado las directivas locales y tiene el permiso de change system time, ya
no sé que más hacer. Necesito ayuda.

Aquí está el código,


<DllImport("coredll.dll")> _
Public Shared Function SetSystemTime(ByRef lpSystemTime As SYSTEMTIME) As
Integer
End Function

<DllImport("kernel32.dll")> _
Public Shared Function SetLocalTime(ByRef lpSystemTime As SYSTEMTIME) As
Integer
End Function

Private Sub btnGetDateTime_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnGetDateTime.Click
Dim HoraActual As Date
Dim retval As UInt32
Dim SysTime As SYSTEMTIME
Dim time As Timer

HoraActual = GetNetRemoteTOD(txtServerName.Text)
lblRemoteDateTimeValue.Text = HoraActual.ToString

SysTime.wYear = Year(fecha)
SysTime.wMonth = Month(fecha)
SysTime.wDay = Microsoft.VisualBasic.DateAndTime.Day(fecha)
SysTime.wHour = Hour(fecha)
SysTime.wMinute = Minute(fecha)
SysTime.wSecond = Second(fecha)

''Cambia la hora del sistema
SetLocalTime(SysTime)

''SetSystemTime(systime)
End Sub



<DllImport("coredll.dll")> _
Public Shared Function SetSystemTime(ByRef lpSystemTime As SYSTEMTIME) As
Integer
End Function
<DllImport("kernel32.dll")> _
Public Shared Function SetLocalTime(ByRef lpSystemTime As SYSTEMTIME) As
Integer
End Function


Public Structure SYSTEMTIME
Public wYear As Integer
Public wMonth As Integer
Public wDayOfWeek As Integer
Public wDay As Integer
Public wHour As Integer
Public wMinute As Integer
Public wSecond As Integer
Public wMilliseconds As Integer
End Structure
 

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
15/01/2005 - 00:16 | Informe spam
Sera que el usuario sobre el cual se esta ejecutando la aplicacion no tiene
permiso para modificar la hora del sistema? Verifica el resultado de
SetSystemTime y en caso de ser 0 usa
System.Runtime.InteropServices.Marshal.GetLastWin32Error para saber por que
error no se produjo el cambio de hora/fecha.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo

Preguntas similares