Função GetSystemTimeAdjustment (sysinfoapi.h)

Determina se o sistema está aplicando ajustes periódicos de tempo ao relógio de hora do dia e obtém o valor e o período de tais ajustes.

Sintaxe

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

Parâmetros

[out] lpTimeAdjustment

Um ponteiro para uma variável que a função define como o número de unidades lpTimeIncrement de 100 nanossegundos adicionadas ao relógio de hora do dia para cada período de tempo que realmente passa conforme contado pelo sistema. Esse valor só terá significado se lpTimeAdjustmentDisabled for FALSE.

[out] lpTimeIncrement

Um ponteiro para uma variável que a função define para o intervalo em unidades de 100 nanossegundos em que o sistema adicionará lpTimeAdjustment ao relógio de hora do dia. Esse valor só terá significado se lpTimeAdjustmentDisabled for FALSE.

[out] lpTimeAdjustmentDisabled

Um ponteiro para uma variável que a função define para indicar se o ajuste de tempo periódico está em vigor.

Um valor true indica que o ajuste de tempo periódico está desabilitado e o relógio de hora do dia do sistema avança na taxa normal. Nesse modo, o sistema pode ajustar a hora do dia usando seus próprios mecanismos internos de sincronização de horário. Esses mecanismos internos de sincronização de tempo podem fazer com que o relógio de hora do dia seja alterado durante o curso normal da operação do sistema, o que pode incluir saltos perceptíveis no tempo, conforme considerado necessário pelo sistema.

Um valor false indica que o ajuste de tempo periódico está sendo usado para ajustar o relógio de hora do dia. Para cada período de tempo lpTimeIncrement que realmente passa, lpTimeAdjustment será adicionado à hora do dia. Se o valor lpTimeAdjustment for menor que lpTimeIncrement, o relógio de hora do dia do sistema avançará a uma taxa mais lenta do que o normal. Se o valor lpTimeAdjustment for maior que lpTimeIncrement, o relógio de hora do dia avançará a uma taxa mais rápida do que o normal. Se lpTimeAdjustment for igual a lpTimeIncrement, o relógio da hora do dia avançará em sua velocidade normal. O valor lpTimeAdjustment pode ser definido chamando SetSystemTimeAdjustment. O valor lpTimeIncrement é corrigido pelo sistema no início e não é alterado durante a operação do sistema. Nesse modo, o sistema não interferirá no esquema de ajuste de tempo e não tentará sincronizar a hora do dia por conta própria por meio de outras técnicas.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

As funções GetSystemTimeAdjustment e SetSystemTimeAdjustment podem ser usadas para dar suporte a algoritmos que desejam sincronizar o relógio de hora do dia, relatado por GetSystemTime e GetLocalTime, com outra fonte de tempo usando um ajuste de tempo periódico.

A função GetSystemTimeAdjustment permite que um chamador determine se o ajuste de tempo periódico está habilitado e, se for, obtenha a quantidade de cada ajuste e o tempo entre os ajustes. A função SetSystemTimeAdjustment permite que um chamador habilite ou desabilite o ajuste de tempo periódico e defina o valor do incremento de ajuste.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho sysinfoapi.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

GetLocalTime

Getsystemtime

SetSystemTimeAdjustment

Hora do sistema

Funções de tempo