标题: [问题求助] VBS的SWbemDateTime对象的FILETIME format 是怎么定义的?[已解决] [打印本页]
作者: czjt1234 时间: 2013-3-7 10:59 标题: VBS的SWbemDateTime对象的FILETIME format 是怎么定义的?[已解决]
本帖最后由 czjt1234 于 2013-3-9 07:39 编辑
学习SWbemDateTime对象
但是为了搞明白
UTC 是啥
CIM_DATETIME 格式是怎样定义的
Interval Format 格式是怎样定义的
VT_DATE 格式是怎样定义的
为了搞清楚这几个单词,已经花了累计9个多小时了
还有个 FILETIME format 不知道到底是怎么定义的
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724284(v=vs.85).aspx
这里是什么乱七八糟的?
作者: czjt1234 时间: 2013-3-7 13:37
- Set objSWbemDateTime = CreateObject("WbemScripting.SWbemDateTime")
- objSWbemDateTime.SetVarDate("2000-1-2 18:30:00")
- objSWbemDateTime.IsInterval = True
- Msgbox objSWbemDateTime.Value
复制代码
这里显示的时间长度是2天18小时30分钟,这是怎么算的?
作者: czjt1234 时间: 2013-3-9 07:37
WMI有自己的日期和时间格式,该格式与代码页无关
WMI用于表示时间刻度的格式CIM_DATETIME:yyyymmddHHMMSS.mmmmmmsUUU
其中:yyyy年 mm月 dd日 HH小时 MM分 SS秒 mmmmmm微秒
s为+或-,分别代表东时区和西时区
UUU表示相对于UTC标准时间,相差多少分钟
比如东8区,相对于UTC标准时间,相差8小时,就是480分钟,记作+480。西5区则记作-300
WMI还有用于表示时间长度的格式Interval Format:ddddddddHHMMSS.mmmmmm:000
其中:dddddddd天数 HH小时 MM分 SS秒 mmmmmm微秒
最后的:000是固定格式
WMI支持VT_DATE格式,这是本地时间,与代码页相关
该格式是按照"控制面板"→"区域和语言选项"里设置的"短日期 时间"显示的
vbs里的Now函数返回的也是VT_DATE格式
如果你在控制面板里改变了区域设置,那么VT_DATE格式也会随之改变
FILENAME格式,表示一个时间长度值,精确到0.0000001秒=0.1微秒=100纳秒
起始时间,微软定为:1601-01-01 00:00:00
从起始时间到指定时间的长度
北京时间2000年1月2日 18:30:00
按CIM_DATETIME格式记作20000102183000.000000+480
按VT_DATE格式显示为2000-1-2 18:30:00- Set objSWbemDateTime = CreateObject("WbemScripting.SWbemDateTime")
-
- objSWbemDateTime.SetVarDate("2000-1-2 18:30:07") '按VT_DATE格式输入时间
- 'objSWbemDateTime.SetFileTime("125913114070000000") '按FILENAME格式输入时间
-
- Msgbox "按VT_DATE格式输入本地时间:2000-1-2 18:30:07" & vbCrLf & vbCrLf & _
- "输出:" & vbCrLf & _
- "FILENAME格式本地时间" & vbTab & objSWbemDateTime.GetFileTime() & vbCrLf & _
- "FILENAME格式UTC时间" & vbTab & objSWbemDateTime.GetFileTime(False) & vbCrLf & _
- "VT_DATE格式本地时间" & vbTab & objSWbemDateTime.GetVarDate() & vbCrLf & _
- "VT_DATE格式UTC时间" & vbTab & objSWbemDateTime.GetVarDate(False) & vbCrLf & _
- "CIM_DATETIME格式" & vbTab & objSWbemDateTime.Value
复制代码
作者: Demon 时间: 2013-3-9 22:55
VT_DATE只不过是double而已。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |