TimeSrv - Time Server Windows 上で動く Time Server ■前口上 いまどき、ネットワークでの時刻同期は、伝送遅延まで考慮に入れた NTP または SNTP を使うのがあたりまえだと思います。でも、自宅で使 っている Windows3.1 だと、TIME プロトコルのクライアントしか入手で きまなかったのです。そこで、自宅内のLANのために、クライアント に合ったサーバを調達しようとしたのですが、Windows95 用の TIME プ ロトコルのサーバってほとんどみつからないんですね。まぁ、UNIX 系の OSを使っていれば、ほとんどデフォルトで装備しているようなもので すが、需要が少ないというのもあるのでしょう。 ということで、仕方がないので Delphi で作ってみました。ま、こん なもん、Delphi のコンポーネントのサンプルソースに毛が生えたような ものなのですが、コンパイラを持っていない方のお役に立てればと思い、 公開させていただくことにしました。 ■動作環境 Windows95/98/Me/2K/XP 汎用(のはず)。 ただし、Windows95 でしかテストは行なわれておりません。 なお、レジストリは一切使っておりませんので、単にファイルを削除す るだけでアンインストール可能です。 ■使用法 単に実行させるだけです。アイコンをダブルクリックでもいいし、フ ァイル名を指定して実行でもいいです。なお、サービス化する機能はつ けていませんので、常時実行するのであれば、スタートアップフォルダ にいれておくのがいいでしょう。 実行させても、画面には何も表示されません。また、タスクバーにも あらわれませんし、タスクトレイに入る機能すらつけてありません。き ちんと実行されているのか確認したいときは [CTRL]+[ALT]+[DELETE] で どうぞ。実行を終了させたいときも、もちろんこのキー操作になります。 実行中は TIME クライアントから要求があれば、サーバマシンの時刻 をクライアントに返します。 ■ソースに関して Delphi version4 Standard で作成しております。 Indy9 なら既成のコンポーネント2つをフォームに落すだけで終りな んですが、あいにくとこいつは D4S では動かないので、Indy8 を使って 作りました。Indy8 にはTCPな TIME サーバはあるのですが、UDP な TIME サーバがなかったので、そこだけ Indy9 からポーティングする ような格好になってしまいました。あとは、ちょこっとフォームのプロ パティを変更しただけのようなものですから、あまりつっこまないでく ださい。 ■著作権、再配布等 一応、著作権は主張させていただきます。以下、本プログラム、およ びドキュメントを総称して「本プログラム等」と表します。 ・本プログラム等の著作権は としき が有します。 ・本プログラム等を使用することにより、使用者の予期しない影響が あっても、作者はなんらの保証および補償をいたしません。 ・本プログラム等の転載、再配布、販売等は、事前に著作権者の許可 を求めなければ、自由にできます。 ^^^^^^^^^^^^ ただし、事前に許可を求められた場合は、原則として全てお断り いたします。なお、事後報告は歓迎いたします。 ^^^^^^^^^^ もちろん書籍、雑誌、CD−ROMへの収録も自由です。 なお、転載等を長期間継続するような場合でも、定期的な連絡・ 報告などは不要です。また、1つのバージョンについて1ヶ所の 転載先に対し3回以上連絡があった場合、当該バージョンの転載 中止を要請することがあります。 ・著作者人格権の同一性保持権に基づき、本プログラム等の改変を自 由に行うことを許可します。というよりも、積極的な改変をお願い いたします。 ただし、改変した本プログラム等では、著作者人格権の氏名表示権 に基づき、原作者の著作権表示を消去することを要請します。 なお、差し支えなければ改変した部分をご連絡いただければ、次の バージョンからその改変内容を反映させていただきたいと思います。 ・転載等の際は、入手した本プログラム等のファイル構成に対し変更 を加えずに再配布してください。ただし、本プログラム等に改変を 加えた場合はこの限りではありません。 ・作者は、このプログラムに不備があっても、それを訂正する義務を 負いません。しかし、努力はするでしょうから連絡をお願いします。 ・仕様拡張に関する意見は、私の技術と体力と気力が許す範囲で対応 したいと思います。 ■改版履歴 version 0.01 2002-10-07 ・とりあえず動く version 0.02 2002-10-10 ・ソースを見直していらないルーチンを整理し、ファイルサイズを 小さくした。でも、実行ファイルは 300KB に対して 2KB 減った だけだもんなぁ。(機能に変更なし)