我知道 FILETIME
结构从 1601 年 1 月 1 日开始以 100 纳秒的步长形成日期时间值。但是 dwLowDateTime
的值小于 0 是什么意思???
最佳答案
这意味着您将其视为 int 而不是 unsigned int,因此它可以显示负值。
正如 Matteo Italia 所说,您最好将其放在 ULARGE_INTEGER 中,如下所示:
ULARGE_INTEGER uli;
uli.LowPart = ft.dwLowDateTime;
uli.HighPart = ft.dwHighDateTime;
__int64 filetime64 = uli.QuadPart;
您甚至可以按如下方式使用 memcpy 执行此操作:
__int64 fileTime64;
memcpy( &fileTime64, &ft, sizeof( __int64 ) );
关于c++ - 负的 dwLowDateTime 在 FILETIME 结构中意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13123322/