SetSystemTimeAdjustment

【勇芳软件工作室】汉化HomePreviousNext

SetSystemTimeAdjustment功能告诉系统启用或禁用对其时钟时钟的周期性时间调整。这种时间调整用于将时间与其他一些时间信息源进行同步。当启用周期性时间调整时,它们在每个时钟中断时被应用。

BOOL SetSystemTimeAdjustment(

DWORD 【dwTimeAdjustment】,//尺寸,以100纳秒为单位,进行周期性时间调整
BOOL【bTimeAdjustmentDisabled】//是否禁用或启用周期性时间调整
); 

参数

【dwTimeAdjustment】

指定如果启用周期性时间调整,则在每个时钟中断时间添加到时钟时钟的100纳秒单位数。

【bTimeAdjustmentDisabled】

指定系统使用的时间调整模式。可以禁用或启用定期系统时间调整。

值“TRUE”指定要禁用周期性时间调整。系统可以使用自己的内部机制自由调整时间。【dwTimeAdjustment】的值被忽略。当进行调整时,系统的内部调整机制可能导致时钟时钟显着跳跃。

值FALSE指定要启用周期性时间调整,并将用于调整时钟时钟。该系统不会干扰时间调整方案,不会自动尝试同步时间。系统将在每个时钟中断时将【dwTimeAdjustment】的值添加到当天的时间。

返回值

如果函数成功,返回值不为零。

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.如果主叫方不具有SE_SYSTEMTIME_NAME特权,则该函数可以失败的一种方式。

备注

GetSystemTimeAdjustmentSetSystemTimeAdjustment功能支持通过GetSystemTimeGetLocalTime通过周期性时间调整与另一个时间源进行同步的日期时钟的算法。

SetSystemTimeAdjustment功能支持两种时间同步模式:时间调整 - 禁用和时间调整功能。

在第一种模式下,【bTimeAdjustmentDisabled】设置为FALSE。在每个时钟中断时,系统会将【dwTimeAdjustment】的值添加到当天的时间。时钟中断率可以通过调用GetSystemTimeAdjustment来确定,并查看【lpTimeIncrement】指向的DWORD值的返回值。

在第二种模式下,【bTimeAdjustmentDisabled】设置为TRUE。在每个时钟中断时,系统会将时钟中断之间的时间间隔添加到一天中。不进行该间隔的调整。该系统可以使用其他技术定期刷新时钟。这样的其他技术可能导致时钟时钟在进行调整时显着跳跃。

应用程序必须具有此函数的系统时间权限(SE_SYSTEMTIME_NAME权限)才能成功。默认情况下,SE_SYSTEMTIME_NAME特权被禁用。使用AdjustTokenPrivileges功能在调用SetSystemTimeAdjustment 之前启用该权限,然后在SetSystemTimeAdjustment呼叫之后禁用特权。

也可以看看

AdjustTokenPrivileges, GetSystemTimeAdjustment, SetLocalTime, SetSystemTime, SystemTimeToTzSpecificLocalTime