将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. 汇编语言中SAR和SHR指令的区别
  2. 用VBS监视进程创建和删除
  3. C语言中的round函数
  4. Msxml2.XMLHTTP Msxml2.ServerXMLHTTP与缓存
  5. Suhosin,PHP保护神?

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

  1. prophetk说道:

    来看看

留下回复