[RtlTimeToSecondsSince1970 is available for use in Windows 2000 and Windows XP. It may be unavailable or modified in subsequent releases.]
Converts the specified 64-bit system time to the number of seconds since the beginning of January 1, 1970.
BOOLEAN WINAPI RtlTimeToSecondsSince1970( _In_ PLARGE_INTEGER Time, _Out_ PULONG ElapsedSeconds );
- Time [in]
A pointer to a LARGE_INTEGER structure that specifies the system time. The valid years for this value are 1970 to 2105 inclusive.
- ElapsedSeconds [out]
A pointer to a variable that receives the number of seconds.
If the function succeeds, it returns TRUE. If it fails, it returns FALSE. Typically, this function will fail if the specified value of the Time parameter is not within the valid timeframe specified in the parameter description.
There is no single equivalent public function. To perform this task using public functions, use the following steps:
- Call SystemTimeToFileTime to copy the system time to a FILETIME structure. Call GetSystemTime to get the current system time to pass to SystemTimeToFileTime.
- Copy the contents of the FILETIME structure to a ULARGE_INTEGER structure.
- Initialize a SYSTEMTIME structure with the date and time of the first second of January 1, 1970.
- Call SystemTimeToFileTime, passing the SYSTEMTIME structure initialized in Step 3 to the call.
- Copy the contents of the FILETIME structure returned by SystemTimeToFileTime in Step 4 to a second ULARGE_INTEGER. The copied value should be less than or equal to the value copied in Step 2.
- Subtract the 64-bit value in the ULARGE_INTEGER structure initialized in Step 5 (January 1, 1970) from the 64-bit value of the ULARGE_INTEGER structure initialized in Step 2 (the current system time). This produces a value in 100-nanosecond intervals since January 1, 1970. To convert this value to seconds, divide by 10,000,000.