#ifndef SYS_TIME_H_ #define SYS_TIME_H_ #include #include struct timezone { int tz_minuteswest; /* minutes W of Greenwich */ int tz_dsttime; /* type of dst correction */ }; static __inline int gettimeofday(struct timeval *tp, struct timezone * tzp) { FILETIME file_time; SYSTEMTIME system_time; ULARGE_INTEGER ularge; static int tzflag; GetSystemTime(&system_time); SystemTimeToFileTime(&system_time, &file_time); ularge.LowPart = file_time.dwLowDateTime; ularge.HighPart = file_time.dwHighDateTime; tp->tv_sec = (long)((ularge.QuadPart - 116444736000000000Ui64) / 10000000L); tp->tv_usec = (long)(system_time.wMilliseconds * 1000); if (NULL != tzp) { if (!tzflag) { _tzset(); tzflag++; } tzp->tz_minuteswest = _timezone / 60; tzp->tz_dsttime = _daylight; } return 0; } #endif