Řešením je bohužel opět Win32 API. Deklarace:
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
Public Declare Function SetSystemTime Lib "kernel32" (ByRef lpSystemTime As SYSTEMTIME) As Long
Použití:
Dim newTime As SYSTEMTIME
With newTime
.wDay = 1
.wDayOfWeek = 1
.wHour = 12
.wMilliseconds = 0
.wMinute = 0
.wMonth = 1
.wSecond = 1
.wYear = 2008
End With
'Nastaví datum na 1.1.2008 12:00:00.00
Dim returnValue As Long = SetSystemTime(newTime)
Vaše aplikace musí mít samozřejmě oprávnění pro volání neřízeného kódu a dále je třeba dát pozor, že systémový čas může nastavovat ve výchozím stavu pouze uživatel s oprávněním Power User a vyšším.
|