PINGOCXは、以下に示すOSで動作確認を行っております。
Microsoft Windows 95、Microsoft Windows 98、
Microsoft WindowsNT 4.0、Microsoft Windows 2000
Microsoft Windows XP、Microsoft Windows 2003
PINGOCXをご使用いただくには、以下のいずれかのソフトウェアが必要です。
Microsoft Visual Basic Ver 5.0
Microsoft Visual Basic Ver 6.0
Microsoft Office 2000 (Access、Excel)
Winsock2をサポートしていない環境では使用することができません。
Windows 95では標準サポートされていませんが、下記のURLからWinsock2へのバージョンアップが可能です。
Winsock2がサポートされているかどうかは、システムディレクトリにWs2_32.DLLがあるかどうかを調べることでわかります。
http://www.microsoft.com/Windows95/downloads/contents/wuadmintools/s_wunetworkingtools/w95sockets2/default.asp
PINGOCXは、Microsoft Visual C++ Ver5.0で作成しています。サンプルは、Microsoft Visual Basic Ver.5.0で作成しています。 ※ 本製品は日本語環境のみの対応となります。 |
セットアップキット(Willware.exe)をダブルクリックします。
画面にしたがって、インストールを進めて下さい。
1.インストールを始めます。「次へ」をクリックして下さい。
2.使用許諾契約書です。内容に同意される場合は「次へ」をクリックして下さい。
3.インストール先のフォルダを指定します。
初期設定でよろしければ「次へ」をクリックして下さい。
別のフォルダを指定したい場合は「参照」をクリックし、フォルダを指定して下さい。
4.インストール中に置換されるファイルのバックアップを作成できます。
そのバックアップファイルの保存先フォルダを指定します。
初期設定でよろしければ「次へ」をクリックして下さい。
5.WILLWARE Componentsを登録するスタートメニュー
又はプログラムマネージャのグループフォルダを指定します。
初期設定では、新規に「WILLWARE
Components」の名前でフォルダを作成します。
特に指定する必要がなければ、初期設定をお勧めします。
6.プログラムのコピーを開始します。
「次へ」をクリックして下さい。
7.プログラムのコピーをしています。
中断する場合は、「キャンセル」をクリックして下さい。
8.インストールが完了しました。「完了」をクリックし、インストールを終了して下さい。
インストールが完了すると、スタートメニューに「WILLWARE Components」が追加されます。
「WILLWARE Components」の「サンプル」を起動すると「WILLWARE Components サンプル」画面が表示されます。サンプルの起動、またはそれぞれのソースを開くことができます。但し、ソースを開くにはライセンスが必要です。トライアルライセンス又は、正規ライセンスを登録してご利用下さい。(ライセンスの登録方法は前項の「ライセンスの登録」をご覧下さい。) |
原則としてサポートは行いませんので、お問い合わせはご遠慮下さい。
製品のバージョンアップは、すべて無償です。
バーションアップの情報は、弊社ホームページの新着情報で通知し、各商品のページの更新履歴で更新内容を掲示致します。 |
最新バージョンのプログラムは、弊社ホームページ(http://www.will-ltd.co.jp/)のダウンロードのページよりダウンロードすることが出来ます。ダウンロードするファイルは、以下のバージョンアップの目的により異なりますのでご注意下さい。
ファイル名:「○○○ocx.exe」 |
各セットアップキットを利用してバーションアップをする前に、以下のことにご注意下さい。
|
セットアップキットをダブルクリックし、画面の指示に従ってインストールを進めて下さい。
PINGOCXを単体あるいはアプリケーションに組込んでの再配布を許可します。
※セットアップウィザードを使用する場合・PING.OCX
・MFC42.DLL (Ver 4.21.7022)
・MFC42LOC.DLL (Ver 4.21.7022)
・MSVCRT.DLL (Ver 5.00.7022)
・OLEPRO32.DLL (Ver 5.0.4118)
・OLEAUT32.DLL (Ver 2.20.4118)
PINGOCXをインストールすると、自動的にOCXの依存ファイルが以下のディレクトリにインストールされます。
セットアップウィザードを実行すると自動的にアプリケーション配布時に必要なOCXC:\Windows\system (Windows95, Windows98の場合)
C:\WINNT\system32 (WindowsNT4.0, Windows2000, Windows2003の場合)
C:\ Windows \system32 (WindowsXPの場合)
ホストアドレスとしてブロードキャストアドレスを指定した場合、ホストからのエコー応答は複数になることがあります。MaxCountはいくつのICMPエコー応答メッセージを受け取るかを決定します。 例:Ping1.MaxCount = 254 ホストに到達可能かどうかを調べる場合は、1を指定します 例:Ping1.MaxCount = 1 |
ホストからのICMPエコー応答メッセージが受信できない場合、一定時間経過した時点で、応答なしとみなします。ホスト名からIPアドレスへの変換に要した時間はタイムアウトには含まれません。時間はミリ秒単位で指定します。通常1秒程度でよいでしょう。(デフォルトは1000) 例:Ping1.Timeout = 5000 '5秒 指定された時間内にMaxCountで指定した数のメッセージが受け取れないと、たとえRepliedイベントが発生していてもClosedイベントのCodeは1(タイムアウト)になります。 |
ホスト名を指定して、PINGを開始します。ホスト名には、IPアドレスまたは名前のどちらでも指定することができます。名前を指定した場合、最初に名前をIPアドレスに変換してからPINGを開始します。名前をIPアドレスに変換するには時間を要することがあります。名前を見つけることができない場合は、Closedイベントで通知します。 例:Ping1.Send "127.1" 例:Ping1.Send "hostname" 名前が解決する(IPアドレスに変換することができる)とResolvedイベントが発生します。10進ドット形式で指定した場合もイベントは発生します。 例:
|
ホストからのICMPエコー応答メッセージが受信できると、Repliedイベントが発生します。Repliedイベントには、相手のIPアドレスであるRemote(文字列、10進ドット形式)、往復に要した時間であるTripTime(ミリ秒)、及びTTL(TimeToLive、生存時間)が渡されます。 Remoteには、応答したホストのIPアドレスが10進ドット形式(例:192.13.22.4)の文字列で格納されています。 TripTimeには、送信時にセットした時間と受信時の時間を引き算して求められた時間がミリ秒単位で格納されています。 PINGOCXは、時刻の測定に、GetTickCount APIを使用しています。 TTLには、ホストから自ホストまでに経由したルータの数を推定するための情報が格納されています。 UNIXでは初期値を255にセットする場合が多く、古いUNIXでは、30や60などに設定され、Windowsでは128に設定されます。 応答メッセージが返送されてくる途中ルータでTTLは1づつ減じられます。たとえば、TTLが253である場合、2つのルータを経由したと想像できます。 例:
|
以下の場合にはClosedイベントが発生します。
Closedイベントでは、終了理由を示す数(0〜3; pinglib.pingEndNormal, pinglib.pingEndTimeout, pinglib.pingEndClosed, pinglib.pingEndError)がCode変数に渡されます。
例:
|
ICMPのパケットサイズ(IPヘッダのサイズは含みません)は76バイトです。
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Value | エコー応答の受信数を設定します。次の「設定値」を参照してください。 |
(値) | (説 明) |
正 | エコー応答の受信数 |
上記以外 | 1として扱われる |
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Value | 待機時間を示す長整数です。次の「設定値」を参照してください。 |
(値) | (説 明) |
-1 | タイムアウトしない。(初期値) |
0及び正 | タイムアウト値。 |
上記以外 | 不定。 |
PINGOCXのバージョン情報です。アプリケーション作成者は、アプリケーションプログラムまたはマニュアルに、ここで表示される文字列を表記するようにしてください。 |
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
文字列(String)
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Value | 任意のデータを示すブール値です。 |
(値) | (説 明) |
True | SetSendDataメソッドを使って登録したデータを送信します。 |
False | 規定のデータを送信します。(初期値) 次の「設定値」を参照してください。 |
規定のデータのフォーマット:
マシンの起動時からの経過時間[ミリ秒](4バイト)
半角文字('U')(64バイト)
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Value | 受信するデータサイズを示す長整数です。次の「設定値」を参照してください。 |
(値) | (説 明) |
0 | 送信したときのデータ長まで受信します。 |
正 | 指定したデータのサイズまで受信します。 |
長整数(Long)
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Value | TTLを指定する長整数です。次の「設定値」を参照してください。 |
(値) | (説 明) |
-1 | そのマシンの規定値が使用されます。(初期値) |
0〜255 | 指定した値がTTLに設定されてデータが送信されます。 |
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
PINGを終了します。pingINIT(Statメソッドで確認)以外の場合、終了できたならClosedイベントを発生します。pingINITの場合、Closedイベントは発生しませんが特にエラーも発生しません。 |
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
(値) | (説 明) |
-1 | タイマーの作成に失敗です。 |
上記以外 | Winsockのエラーです。(後述のWinsockエラーコードを参照してください。) |
PINGOCX内で呼び出したWin32 APIまたはWinsockのエラーコードです。
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
RemoteHost | ホスト名。 |
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
(値) | (説 明) | |
pinglib.pingINIT | =0, | 初期状態です。 |
pinglib.pingRESOLVING | =1, | 名前解決待ち状態です。 |
pinglib.pingRESOLVED | =2, | 名前解決済み状態です。 |
pinglib.pingSENDING | =3, | 応答待ち状態です。 |
pinglib.pingREPLIED | =4, | 応答受信済み状態です。 |
StatメソッドはPINGの状態を示します。
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
なし。
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
文字列(String)
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Code | 終了の理由を示す値です。次の「コード」を参照してください。 |
(値) | (内 容) | |
pinglib.pingEndNormal | 0 | 応答が最大受信回数(MaxCountプロパティで指定した回数)に達したことによる終了を意味します。 |
pinglib.pingEndTimeout | 1 | 最大受信回数に達しない場合で、タイムアウト(Timeoutプロパティで指定した時間)となったことによる終了を意味します。 |
pinglib.pingEndClosed | 2 | Closeメソッドによる終了を意味します。 |
pinglib.pingEndError | 3 | エラーが発生したことによる終了を意味します。 |
Sendメソッドが終了するときに発生します。
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
Remote | 相手のIPアドレス(10進ドット形式) |
TTL | ホストから自ホストまでのホップ数を推定するための情報 |
TripTime | 受信するまで(Resolvedイベント直後からRepliedイベント直前まで)に要した時間(ミリ秒) |
エコーの応答を受信すると発生します。
(指定項目) | (内 容) |
Object | PINGOCXオブジェクトです。 |
RemoteIpAddress | 相手のIPアドレス(10進ドット形式)。 |
Sendメソッドで、ホストを名前で指定した場合は名前が解決した(IPアドレスに変換することができる)ときに、また、ホストをIPアドレスで指定した場合はSendメソッドの処理中に発生します。 |
10004 | システムコールの割り込みが発生 |
10009 | 無効なソケット番号を指定した |
10013 | アクセスが拒否された |
10014 | 間違ったアドレスを指定した |
10022 | 無効な引数 |
10024 | 開いているファイル数が多すぎる |
10035 | ブロッキングモードなら操作がブロックした |
10036 | ブロッキング処理中に別のAPIを呼び出した |
10037 | 非ブロッキング処理中に同じAPIを呼び出した |
10038 | ソケット以外に対してソケット操作が行われた |
10039 | 宛先のアドレスが必要 |
10040 | メッセージが長すぎる |
10041 | ソケットに対するプロトコルの種類が不正 |
10042 | プロトコルが使用できない |
10043 | プロトコルがサポートされていない |
10044 | ソケットの種類がサポートされていない |
10045 | 操作がソケットでサポートされていない |
10046 | プロトコルファミリがサポートされていない |
10047 | アドレスファミリがサポートされていない |
10048 | アドレスがすでに使用中 |
10049 | 要求されたアドレスを割り当てられない |
10050 | ネットワークが落ちている |
10051 | ネットワークが到達できない |
10052 | リセットによりネットワーク接続が落とされた |
10053 | ホスト内部で接続を中断した |
10054 | 相手が接続を強制的に切った |
10055 | 利用可能なバッファスペースが存在しない |
10056 | ソケットがすでに接続されている |
10057 | ソケットが接続されていない |
10058 | ソケットの遮断後であるため送信できない |
10059 | 参照数が過大:結合不可能 |
10060 | 時間切れでconnectまたはsendに失敗した |
10061 | 接続が拒否された |
10062 | シンボリックリンクが多すぎる |
10063 | ファイル名が長すぎる |
10064 | ホストが落ちている |
10065 | ホストへの到達経路が存在しない |
10091 | ネットワークサブシステムが使用不能 |
10092 | Winsockがサポートしていないバージョンを指示した |
10093 | Winsockが初期化されていない |
10101 | 接続が切れている |
11001 | ホストが見つからない |
11002 | やり直し可能なエラー |
11003 | 回復不可能なエラー |
11004 | データがない |
ホストの状態を確認します。
PINGを行ってから、FTPやMAILり処理を開始するアプリケーションの雛形としてご利用ください。
ホストの状態を確認します。
応答時間やホップ数、経由するルータのIPアドレスなどの情報も表示します。
ホストアドレスにブロードキャストアドレスを指定して、複数のホストから応答を確認できます。
一定の間隔でPINGを繰り返すことにより、ホストを定期的に監視することが出来ます。
最大5つのホストを同時に監視できます。
発行所 株式会社ウィル
本紙の内容を許可なく複写、転載、データファイル化することを禁じます。
Copyright 2000-2002 WILL Corporation. All rights reserved.