SetSystemTimeAdjustment 함수(sysinfoapi.h)

시스템의 요일 시계에 대한 주기적인 시간 조정을 사용하거나 사용하지 않도록 설정합니다. 사용하도록 설정하면 이러한 시간 조정을 사용하여 시간을 다른 시간 원본 정보와 동기화할 수 있습니다.

구문

BOOL SetSystemTimeAdjustment(
  [in] DWORD dwTimeAdjustment,
  [in] BOOL  bTimeAdjustmentDisabled
);

매개 변수

[in] dwTimeAdjustment

이 값은 실제로 통과하는 각 lpTimeIncrement 기간에 대해 시스템 시간(일)에 추가된 100나노초 단위의 수를 나타냅니다. GetSystemTimeAdjustment를 호출하여 lpTimeIncrement 값을 가져옵니다. 설명을 참조하세요.

참고  

현재 Windows Vista 및 Windows 7 컴퓨터는 16 미만으로 설정된 시간 조정이 손실됩니다.

 

[in] bTimeAdjustmentDisabled

시스템에서 사용할 시간 조정 모드입니다. 주기적인 시스템 시간 조정을 사용하지 않도록 설정하거나 사용하도록 설정할 수 있습니다.

TRUE 값은 주기적인 시간 조정을 사용하지 않도록 지정합니다. 사용하지 않도록 설정하면 dwTimeAdjustment 값이 무시되고 시스템은 자체 내부 시간 동기화 메커니즘을 사용하여 하루 중 시간을 조정할 수 있습니다. 이러한 내부 시간 동기화 메커니즘으로 인해 시스템 작업의 정상적인 과정에서 하루 중 시계가 변경될 수 있으며, 이는 시스템에서 필요하다고 판단되는 시간에 눈에 띄는 점프를 포함할 수 있습니다.

FALSE 값은 주기적인 시간 조정을 사용하도록 지정하고, 요일 시계를 조정하는 데 사용됩니다. 시스템은 시간 조정 체계를 방해하지 않으며 하루 중 시간을 자체적으로 동기화하려고 시도하지 않습니다.

반환 값

함수가 성공하면 반환 값은 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. 함수가 실패할 수 있는 한 가지 방법은 호출자가 SE_SYSTEMTIME_NAME 권한을 가지고 있지 않은 경우입니다.

설명

GetSystemTimeAdjustmentSetSystemTimeAdjustment 함수는 GetSystemTimeGetLocalTime을 통해 보고되는 하루 중 시간 시계를 동기화하는 알고리즘과 주기적인 시간 조정을 사용하는 다른 시간 원본을 지원합니다.

SetSystemTimeAdjustment 함수는 두 가지 시간 동기화 모드를 지원합니다.

모드 동작
Time-Adjustment 사용 안 함 이 모드의 경우 bTimeAdjustmentDisabledTRUE로 설정됩니다. 이 모드에서는 dwTimeAdjustment 값이 무시되고 시스템은 자체 내부 시간 동기화 메커니즘을 사용하여 하루 중 시간을 조정할 수 있습니다. 이러한 내부 시간 동기화 메커니즘으로 인해 시스템 작업의 정상적인 과정에서 하루 중 시계가 변경될 수 있으며, 이는 시스템에서 필요하다고 판단되는 시간에 눈에 띄는 점프를 포함할 수 있습니다.
Time-Adjustment 사용 이 모드의 경우 bTimeAdjustmentDisabledFALSE로 설정됩니다. 실제로 통과하는 각 lpTimeIncrement 기간에 대해 dwTimeAdjustment 가 하루 중 시간에 추가됩니다. lpTimeIncrement로 표시되는 기간은 GetSystemTimeAdjustment를 호출하여 확인할 수 있습니다. lpTimeIncrement 값은 시작 시 시스템에서 수정되며 시스템 작업 중에 변경되지 않으며 지정된 시간에 시스템의 내부 클록 인터럽트 확인과 완전히 독립적입니다. 이 경우 lpTimeIncrement 값은 시스템의 시간 시계에 dwTimeAdjustment 가 적용되는 기간을 나타내기만 하면 됩니다.

dwTimeAdjustment 값이 lpTimeIncrement보다 작으면 시간/시간 시계가 평소보다 느린 속도로 진행됩니다. dwTimeAdjustment 값이 lpTimeIncrement보다 크면 시간 시계가 평소보다 빠르게 진행됩니다. time-of-day-clock이 더 빠르거나 느리게 실행되는 정도는 dwTimeAdjustment 값이 lpTimeIncrement 값보다 높거나 낮은 정도에 따라 달라집니다. dwTimeAdjustmentlpTimeIncrement와 같으면 시간/일 시계가 정상 속도로 진행됩니다.

 

이 함수가 성공하려면 애플리케이션에 시스템 시간 권한(SE_SYSTEMTIME_NAME 권한)이 있어야 합니다. SE_SYSTEMTIME_NAME 권한은 기본적으로 사용하지 않도록 설정됩니다. AdjustTokenPrivileges 함수를 사용하여 SetSystemTimeAdjustment를 호출하기 전에 권한을 사용하도록 설정한 다음 SetSystemTimeAdjustment 호출 후 권한을 사용하지 않도록 설정합니다. 자세한 내용은 특별 권한으로 실행을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 sysinfoapi.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

AdjustTokenPrivileges

GetLocalTime

GetSystemTime

GetSystemTimeAdjustment

시스템 시간

시간 함수