Функция GetSystemTimeAdjustment (sysinfoapi.h)

Определяет, применяет ли система периодические корректировки времени к своим часам времени суток, и получает значение и период любых таких корректировок.

Синтаксис

BOOL GetSystemTimeAdjustment(
  [out] PDWORD lpTimeAdjustment,
  [out] PDWORD lpTimeIncrement,
  [out] PBOOL  lpTimeAdjustmentDisabled
);

Параметры

[out] lpTimeAdjustment

Указатель на переменную, для которой функция задает количество единиц lpTimeIncrement 100-nanosecond, добавленных к часам времени суток за каждый период времени, который фактически передается как подсчитываемый системой. Это значение имеет значение, только если lpTimeAdjustmentDisabled имеет значение FALSE.

[out] lpTimeIncrement

Указатель на переменную, для которой функция задает интервал в 100-наносекундных единицах, с которым система будет добавлять lpTimeAdjustment к часам времени дня. Это значение имеет значение, только если lpTimeAdjustmentDisabled имеет значение FALSE.

[out] lpTimeAdjustmentDisabled

Указатель на переменную, заданную функцией, чтобы указать, действует ли периодическая корректировка времени.

Значение TRUE указывает, что периодическая корректировка времени отключена, а системное время суток увеличивается по нормальной скорости. В этом режиме система может настраивать время суток, используя собственные внутренние механизмы синхронизации времени. Эти внутренние механизмы синхронизации времени могут привести к изменению часов времени суток в ходе нормальной работы системы, что может включать в себя заметные скачки времени, как это сочтет необходимым системой.

Значение FALSE указывает, что для настройки часов времени дня используется периодическая корректировка времени. Для каждого периода времени lpTimeIncrement , который фактически проходит, lpTimeAdjustment будет добавляться к времени суток. Если значение lpTimeAdjustment меньше lpTimeIncrement, системное время суток будет двигаться медленнее, чем обычно. Если значение lpTimeAdjustment больше lpTimeIncrement, время суток будет двигаться быстрее, чем обычно. Если значение lpTimeAdjustment равно lpTimeIncrement, время суток будет продвигаться с нормальной скоростью. Значение lpTimeAdjustment можно задать, вызвав Метод SetSystemTimeAdjustment. Значение lpTimeIncrement фиксируется системой при запуске и не изменяется во время работы системы. В этом режиме система не будет мешать схеме корректировки времени и не будет пытаться синхронизировать время суток самостоятельно с помощью других методов.

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Функции GetSystemTimeAdjustment и SetSystemTimeAdjustment можно использовать для поддержки алгоритмов, которые хотят синхронизировать часы времени суток, сообщаемые GetSystemTime и GetLocalTime, с другим источником времени с помощью периодической корректировки времени.

Функция GetSystemTimeAdjustment позволяет вызывающему объекту определить, включена ли периодическая корректировка времени, и, если она есть, получить величину каждой корректировки и время между корректировками. Функция SetSystemTimeAdjustment позволяет вызывающей объекту включать или отключать периодическую корректировку времени, а также устанавливать значение корректирующего приращения.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header sysinfoapi.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

GetLocalTime

GetSystemTime

SetSystemTimeAdjustment

Системное время

Функции времени