まえがき
Windows 10はntpプロトコルを利用して時刻合わせを実行しています。
時刻合わせのトリガーは17分、9時間、7日のいずれかの設定値が使われますが、Windows Timeサービス(W32Time)のスタートアップの種類が「手動」になっていると時刻合わせは行われません。
SpecialPollInterval(604800)はWindows 10の既定値ですが、その値が設定されている時はW32Timeは無効にされているが動作していない可能性が高いです。
604800は秒数を表しており、7日のことです。
W32Timeの設定情報はレジストリエディタを開いて以下の階層で確認することができます。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
TClock シリーズ
レジストリは触りたくないので、TClockの時刻合わせ機能を利用して定期的に時刻合わせを実行するよう設定しました。
この方法は、Windows Timeのスタートアップの種類に左右されることなく時刻合わせを行うことができます。
使用したのは、TClock Light(k-takata)。
記述時点で、Windows 10 v1909で安定動作するTClockシリーズは2種類。
- TClock Light(k-takata)
- TClock-Win10
TClock Light(k-takata)
[手順]
- tclock.exeを管理者として実行する(右クリック > 管理者として実行)
- TClockのプロパティ(通知領域の時計を右クリック)
- アラームを追加するTClockのプロパティ > アラーム
- 名前:SNTP
- 有効にチェックを入れる
- 時:*/2(2時間おきにチェックする)
- 分:0
- ファイル:sntp

手順3~8

W32Time既定値

| HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config | |
| MaxPollInterval | 15(2^15) =32,768(秒)≒546(分)≒9(時間) |
| MinPollInterval | 10(2^10) =1,024(秒)≒17(分) |
| HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters | |
| NtpServer | time.windows.com,0x9 |
| HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient | |
| SpecialPollInterval | 604800(秒)=10,080(分)=168(時間)=7(日) |
修正例
出典サイトによると、SpecialPollIntervalの既定値(604800)は大きすぎるので W32Time が正しく動作しない場合があるとのことでした。
| HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters | |
| NtpServer | time.windows.com,0x8 |
| HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient | |
| SpecialPollInterval | 3600(秒)=60(分) |
SpecialPollInterval
SpecialPollIntervalの値は次の範囲で設定します。
MaxPollInterval (15) > SpecialPollInterval (3600) > MinPollInterval (10)
数値の意味が異なるのでご注意を!
MaxPollInterval, MinPollInterval:2のべき乗(215, 210)
SpecialPollInterval:10進数
まとめ
- Windowsの時刻合わせは、MaxPollInterval, MinPollInterval, SpecialPollInterval の値をを変更して調整することができる。
- Windows Time(サービス)のスタートアップは「自動(遅延起動)」が望ましい。
- TClock Light (k-takata) のアラーム機能を利用して定期的に時刻合わせを行うことができる。
- tclock.exeを管理者として実行すると、TClock Lightから起動したプログラムが全て管理者モードで動作するようになります。
このサイトを検索 | Search this site





