none
PC起動時にインターネット時刻と同期する RRS feed

  • 質問


  • 手動でコントロールパネルの「日付と時刻」から「インターネット時刻」→「設定の変更」→「今すぐ更新」をクリックする。
    これと同様の時刻の同期を、MyPC(Windows7)起動時にインターネット時刻と同期させる方法をご教授よろしくお願いいたします。
    例えば、コードは分からないのですが.BATファイル(.VBSファイル)を実行するとか?
    追記:インターネット回線接続は「NTT西日本の光回線とルータ/プロバイダー「ぷらら」です。

    • 編集済み sakuraxx 2019年8月22日 5:44
    2019年8月22日 5:22

すべての返信

  • ここは VBA のフォーラムなので VBA 以外の質問は適切ではありません。

    調べたら一応、NTP で時刻同期する w32tm というコマンドがあるみたいです。
    ただ、条件によって上手く動かないことがあるみたいなのですべての環境で
    適用できるかは分かりません。

    参考

    NTP クライアントを自作すればいいんでしょうけど、自分にはちょっと
    対応できません。

    2019年8月22日 15:43
  • infadeさん情報の提供ありがとうございます。
    ご紹介のNTPコマンドの試行に手間取り返信が遅くなりました…成功しました(^L^)…問題解決
    下記のバッチファイルを管理者権限で実行します。

    ■試行(1).公共のNICTの時刻サーバ(ntp.nict.jp)の時刻をMyPCの時刻に設定しました。
    ≪SampleA.bat≫
    @echo off
    echo 現在時刻を表示します。
    echo %date% %time%
    echo  ↓
    echo 1.公共のタイム時刻サーバ:NICT(ntp.nict.jp)を設定します。
    w32tm /config /manualpeerlist:"ntp.nict.jp"
    echo  ↓
    echo 2.この後、サービスとして自動的に動作するように設定します。
    sc config w32time start= delayed-auto
    echo  ↓
    echo 特記:PCを再起動しないとw32timeが動かないので、強制的にw32timeを動かします。
    echo 3.念のためw32timeを停止します。
    net stop w32time
    echo  ↓
    echo 4.その後にw32timeを起動します。
    net start w32time
    echo  ↓
    echo ◎◎◎処理完了◎◎◎
    timeout 5

    ■試行(2).MyPCの現在時刻が大幅にずれていた場合、上記の方法だと同期してくれないので、自宅のブロードバンドルーターの時刻と同期させる下記の方法で設定をしました。
    ≪SampleB.bat≫
    @echo off
    echo 現在時刻を表示します。
    echo %date% %time%
    echo  ↓
    echo 自宅のブロードバンドルータとの時刻合わせ(BBRouterのIPAddresstが 192.168.1.1 の場合)
    net time \\192.168.1.1 /set /y
    echo  ↓
    echo ◎◎◎処理完了◎◎◎
    timeout 5

    sakuraxx


    • 編集済み sakuraxx 2019年8月29日 9:50 試行結果の修正
    2019年8月27日 12:54