>  기사  >  웹 프론트엔드  >  VBS를 사용하여 시스템 시간과 날짜를 수정(설정)하는 코드

VBS를 사용하여 시스템 시간과 날짜를 수정(설정)하는 코드

高洛峰
高洛峰원래의
2017-01-16 10:18:331832검색

那天跟别人聊到 Y2K38 问题,于是想到一个恶作剧:用 VBS 把系统的时间修改到2038年1月19日3时14分07秒之后,这样某些依赖于 Unix 时间戳的程序就会出问题。那么怎样用 VBS 修改系统的时间呢? 

最简单也是最没有技术含量的方法就是调用 cmd 的 date 和 time 命令: 

'Author: Demon 
'Website: http://demon.tw 
'Date : 2011/4/27 
Dim WshShell 
Set WshShell = CreateObject("wscript.Shell") 
WshShell.Run "cmd.exe /c date 2038-01-19", 0 
WshShell.Run "cmd.exe /c time 3:14:08", 0

比较有技术含量的方法是用 WMI 的 Win32_OperatingSystem 类的 SetDateTime 方法: 

'Author: Demon 
'Website: http://demon.tw 
'Date : 2011/4/27 
dtmNewDateTime = "20380119031408.000000+480" 'UTC时间 
strComputer = "." 
Set objWMIService = GetObject("winmgmts:{(Systemtime)}\\" & strComputer & "\root\cimv2") 
Set colOSes = objWMIService.ExecQuery("Select * From Win32_OperatingSystem") 
For Each objOS In colOSes 
objOS.SetDateTime dtmNewDateTime 
Next

Windows 7 在开启 UAC 的情况下需要管理员权限才能修改时间,一点也不好玩。 

更多用VBS修改(设置)系统时间和日期的代码相关文章请关注PHP中文网!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.