将WMI中的DateTime类型转换成VBS时间

标签: , , ,

WMI中的DateTime数据类型保存的时间格式是UTC,与VBS中的时间类型不同。

有两种方法可以转换,一种是自己写个函数解析:

Function WMIDateStringToDate(DateTime)
    WMIDateStringToDate = _
    CDate(Mid(DateTime, 5, 2) &_
    "/" &_
    Mid(DateTime, 7, 2) &_
    "/" &_
    Left(DateTime, 4) &_
    " " &_
    Mid (DateTime, 9, 2) &_
    ":" &_
    Mid(DateTime, 11, 2) &_
    ":" &_
    Mid(DateTime, 13, 2))
End Function

另一种是使用SWbemDateTime对象

Function WMIDateStringToDate(DateTime)
   Set WbemDateTime = _
   CreateObject("WbemScripting.SWbemDateTime")
   WbemDateTime.Value = DateTime
   WMIDateStringToDate = WbemDateTime.GetVarDate()
End Function

参考链接:It’s About Time (Oh, and About Dates, Too)

随机文章:

  1. 没有找到msgmanage.dll
  2. 用JavaScript读写二进制文件的另一种方法
  3. 批处理技术内幕:IF命令
  4. VBS中Property Set和Property Let的区别
  5. 利用WMI打造完美“三无”后门-消灭一切假网卡

一条评论 发表在“将WMI中的DateTime类型转换成VBS时间”上

  1. prophetk说道:

    来看看

留下回复