Function Reference

_Date_Time_SetSystemTimeAdjustment

システムクロックの周期間隔調節の有効/無効を切り替えます。

#Include <Date.au3>
_Date_Time_SetSystemTimeAdjustment($iAdjustment, $fDisabled)

 

パラメータ

$iAdjustment 周期間隔調節が有効になっている場合に各クロック割り込みでクロックに加算される100ナノ秒単位の秒数。 
$fDisabled Trueの場合、周期間隔調節を無効にします。
システムは自動で独自の内部メカニズムを使用して時刻を調節します。
システムの内部調節メカニズムでは調節時に時計の時刻が著しく変化する場合があります。
Falseの場合、周期間隔調節を有効にし時計の調整をおこないます。
システムは時間調整スキームに干渉せず、自身では時刻の同期をおこないません。
システムはiAdjustment値を各クロック割り込み時に加算します。

 

返し値

成功: True
失敗: False

 

注意

なし。

 

関連

_Date_Time_GetSystemTimeAdjustment

 


#include <Date.au3>
#include <WinAPI.au3>

; Vista では WindowsAPI "SetSystemTimeAdjustment" はシステムセキュリティによって拒否されることがある

_Main()

Func _Main()
    Local $aInfo

    ; デモが観察できるよう時計を表示
    Run("RunDll32.exe shell32.dll,Control_RunDLL timedate.cpl")
    WinWaitActive("[CLASS:#32770]")

    ; 現在の時間調節値を取得
    $aInfo = _Date_Time_GetSystemTimeAdjustment()

    ; 時計を遅らせる
    If Not _Date_Time_SetSystemTimeAdjustment($aInfo[1] / 10, False) Then
        MsgBox(4096, "Error", "System clock cannot be DOWN" & @CRLF & @CRLF & _WinAPI_GetLastErrorMessage())
        Exit
    EndIf
    MsgBox(4096, "Information", "Slowing down system clock", 2)

    Sleep(5000)

    ; 時計を早くする
    If Not _Date_Time_SetSystemTimeAdjustment($aInfo[1] * 10, False) Then
        MsgBox(4096, "Error", "System clock cannot be UP" & @CRLF & @CRLF & _WinAPI_GetLastErrorMessage())
    EndIf
    MsgBox(4096, "Information", "Speeding up system clock", 2)

    Sleep(5000)

    ; 時間調整値をリセット
    If Not _Date_Time_SetSystemTimeAdjustment($aInfo[1], True) Then
        MsgBox(4096, "Error", "System clock cannot be RESET" & @CRLF & @CRLF & _WinAPI_GetLastErrorMessage())
    Else
        MsgBox(4096, "Information", "System clock restored")
    EndIf

EndFunc   ;==>_Main