如何将十六进制MSDos日期转换为人类可读日期格式

时间:2018-02-02 08:29:45

标签: c++ wmi

我通过c ++使用WMI查询语言查询了一个日志文件。我在检索日志文件的TimeWritten属性时获得了一个Variant日期(日期的十进制数表示)类型。我将变体日期转换为DOSDate(十六进制)使用VariantTimeToDosDateTime函数表示日期。现在我有一个日期的十六进制表示,需要将其转换为人类可读的格式。 我的代码片段是:

containerView.bounds

产生的输出是:

hr = pclsobj->Get(L"TimeWritten",0,&vtProp,0,0); 
    USHORT udate[10];
    USHORT utime[10] ; 
    DOUBLE date = (vtProp.date) ;
    wcout << date << endl ;  
    VariantTimeToDosDateTime(date , udate , utime);
    wcout << udate << " " << utime << endl ; 
    wcout << "TimeWritten : " << vtProp.pdblVal << endl ;
    VariantClear(&vtProp);

有人可以帮我解决这个问题。

已编辑的代码:

2.29069e-317
00BFF74C 00BFF730
TimeWritten : 0046BEFC

0 个答案:

没有答案