Come modificare la data di sistema con Visual Basic

September 16

Come modificare la data di sistema con Visual Basic


Ci sono vari motivi per modificare la data e l'ora in un computer host da un'applicazione Visual Basic. Forse si sta costruendo il software di gestione fuso orario o il software di sincronizzazione dell'ora di rete. Anche se il framework .NET non nativo permette di cambiare l'ora di sistema da Visual Basic, è possibile importare un nativo di Windows libreria di collegamento dinamico (DLL) per fare il lavoro per voi. Utilizzando le InteropServices e spazi dei nomi ComponentModel consente di importare la DLL, e richiamare il metodo esterno.

istruzione

1 Creare un nuovo file nel progetto di Visual Basic e il nome "SysTime.vb".

2 Copia e incolla il seguente codice nel nuovo file:
Imports System
Imports System.Runtime.InteropServices
Imports System.ComponentModel

Classe SysTime

<StructLayoutAttribute (LayoutKind.Sequential)>
struttura SYSTEMTIME
anno Public Come Corto
mese Public Come Corto
dayOfWeek Public Come Corto
Pubbliche giorni Come Corto
ora pubblica come Corto
minuto Public Come Corto
secondo Public Come Corto
millisecondi pubblici come brevi
fine Structure

<DllImport (\ "kernel32.dll \")>
Privato SetSystemTime funzione condivisa (systime come SystemTime ByRef) come booleano

Public Shared Sub Set (al momento in cui SystemTime)
SysTime.SetSystemTime (tempo)
End Sub
End Class

3 Chiamare la funzione copiando e incollando il seguente codice nel ciclo principale del programma:
Dim setTimeTo come SysTime.SystemTime
ANDARE
setTimeTo.year = 0
setTimeTo.month = 0
setTimeTo.dayOfWeek = 0
setTimeTo.day = 0
setTimeTo.hour = 0
setTimeTo.minute = 0
setTimeTo.second = 0
setTimeTo.milliseconds = 0
SysTime.Set (setTimeTo) = 0

4 Modificare gli zeri nel passaggio precedente per tutto il tempo che vuoi l'ora di sistema di essere.

Consigli e avvertenze

  • Ciò richiede che il programma chiamante è stata concessa SeSystemTimePrivilege e che questo privilegio è abilitata.