Функция RtlTimeToSecondsSince1970 (winternl.h)
[RtlTimeToSecondsSince1970 доступен для использования в Windows 2000 и Windows XP. Он может быть недоступен или изменен в последующих выпусках.]
Преобразует указанное 64-разрядное системное время в секунды с начала 1 января 1970 года.
Синтаксис
BOOLEAN RtlTimeToSecondsSince1970(
[in] PLARGE_INTEGER Time,
[out] PULONG ElapsedSeconds
);
Параметры
[in] Time
Указатель на структуру LARGE_INTEGER , указывающую системное время. Допустимые годы для этого значения — от 1970 до 2105 включительно.
[out] ElapsedSeconds
Указатель на переменную, получающую количество секунд.
Возвращаемое значение
Если функция выполняется успешно, возвращается значение TRUE. В случае сбоя возвращается значение FALSE. Как правило, эта функция завершается сбоем, если указанное значение параметра Time не находится в пределах допустимого интервала времени, указанного в описании параметра.
Комментарии
У этой функции нет связанной библиотеки импорта. Для динамической связи с Ntdll.dll необходимо использовать функции LoadLibrary и GetProcAddress .
Не существует единой эквивалентной общедоступной функции. Чтобы выполнить эту задачу с помощью общедоступных функций, выполните следующие действия.
- Вызовите SystemTimeToFileTime , чтобы скопировать системное время в структуру FILETIME . Вызовите Метод GetSystemTime , чтобы получить текущее системное время, передаваемого в SystemTimeToFileTime.
- Скопируйте содержимое структуры FILETIME в ULARGE_INTEGER структуру.
- Инициализируйте структуру SYSTEMTIME с датой и временем первой секунды 1 января 1970 г.
- Вызовите SystemTimeToFileTime, передавая в вызов структуру SYSTEMTIME , инициализированную на шаге 3.
- Скопируйте содержимое структуры FILETIME, возвращенной SystemTimeToFileTime на шаге 4, во второй ULARGE_INTEGER. Скопированное значение должно быть меньше или равно значению, скопированного на шаге 2.
- Вычитает 64-разрядное значение в структуре ULARGE_INTEGER , инициализированной на шаге 5 (1 января 1970 г.) из 64-разрядного значения структуры ULARGE_INTEGER , инициализированной на шаге 2 (текущее системное время). С 1 января 1970 г. создается значение в 100-наносекундных интервалах. Чтобы преобразовать это значение в секунды, разделите на 10 000 000.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | winternl.h |
Библиотека | ntdll.lib |
DLL | ntdll.dll |