1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
void UnixTime2WinFileTime(const time_t& src, FILETIME& dst)
{
ULARGE_INTEGER ll;
ll.QuadPart = Int32x32To64(src, 10000000) + 116444736000000000;
dst.dwLowDateTime = ll.LowPart;
dst.dwHighDateTime = ll.HighPart;
}
void WinFileTime2UnixTime(const FILETIME& src, time_t& dst)
{
ULARGE_INTEGER ll;
ll.LowPart = src.dwLowDateTime;
ll.HighPart = src.dwHighDateTime;
LONGLONG secs = (ll.QuadPart - 116444736000000000) / 10000000;
dst = sec; // <= verifier qu'on explose pas le time_t avant !
} |
Partager