Microsoft Windows 95、Microsoft Windows 98、
Microsoft WindowsNT 4.0、Microsoft Windows 2000
Microsoft Windows XP、Microsoft Windows 2003
Microsoft Visual Basic Ver 5.0
Microsoft Visual Basic Ver 6.0
Microsoft Office 2000 (Access、Excel)
UDPOCXは、Microsoft Visual C++ Ver5.0で作成しています。サンプルは、Microsoft Visual Basic Ver 5.0で作成しています。 ※本製品は日本語環境のみの対応となります。 |
画面にしたがって、インストールを進めて下さい。
1.インストールを始めます。「次へ」をクリックして下さい。
あらかじめ電子メールで通知しているライセンス情報を利用してライセンスを登録する等、レジストリファイルを利用しない場合は、VisualBasic起動後に新規プロジェクトを選択し以下のデザイン画面を開きます。 |
ツールボックスを右クリックしてメニューから「プロジェクト」を選択し、「コンポーネント」画面を開きます。次にコントロールタブの一覧からUDPOCXを選択して「OK」をクリックすると、UDPOCXがツールボックスに追加され、アイコンが表示されます。 |
ツールボックスに追加されたUDPOCXを選択し、フォームにアイコンを貼り付け、プロパティの「(バージョン情報)」をクリックすると、以下の「WILL LICENSE REGISTRATION」画面が表示されます。ここで、ユーザー名、シリアル番号、キーコードをそれぞれ入力してライセンス登録を行います。 |
既にトライアルライセンスが登録されている場合には、デザイン画面にあるUDPOCXのプロパティで「バージョン情報」をクリックして下さい。 |
入力したライセンスにスペースが含まれていないか確認して下さい。※登録したライセンスを認識しない!?
(ライセンスに、スペースは使用していません。)
ライセンスを登録しても、オブジェクトが新規ライセンスを認識していない場合は、※トライアルライセンスで作成したアプリケーションはどうする!?
UDPOCXのアイコンを少し動かして下さい。
この作業により、オブジェクトにライセンスが記憶されます。
既にトライアルライセンスで作成したアプリケーションは、
正規ライセンスを登録した後、再コンパイルする必要があります。
「WILLWARE Components」の「サンプル」を起動すると「WILLWARE Components サンプル」画面が表示されます。サンプルの起動、またはそれぞれのソースを開くことができます。但し、ソースを開くにはライセンスが必要です。トライアルライセンス又は、正規ライセンスを登録してご利用下さい。(ライセンスの登録方法は前項の「ライセンスの登録」をご覧下さい。) |
最新バージョンのプログラムは、弊社ホームページ(http://www.will-ltd.co.jp/)のダウンロードのページよりダウンロードすることが出来ます。ダウンロードするファイルは、以下のバージョンアップの目的により異なりますのでご注意下さい。
●WILLWARE Components(全製品用)セットアップキットを利用してバージョンアップ
●各コンポーネント毎のセットアップキットを利用してバージョンアップ
|
各セットアップキットを利用してバーションアップをする前に、以下のことにご注意下さい。
● WILLWARE Components(全製品用)セットアップキットを利用してバージョンアップする場合は、古いバージョンをアンインストールしてから、最新バージョンをインストールすることをお勧めいたします。
● 各コンポーネント毎のセットアップキットを利用してバージョンアップする場合は、最新バージョンをそのままインストールして下さい。古いファイルは上書きされます。
|
※セットアップウィザードを使用する場合
UDPOCXをインストールすると、自動的にOCXの依存ファイルが以下のディレクトリにインストールされます。
C:\Windows\system (Windows95, Windows98の場合)セットアップウィザードを実行すると自動的にアプリケーション配布時に必要なOCX
C:\WINNT\system32 (WindowsNT4.0, Windows2000, Windows2003の場合)
C:\Windows\system32 (WindowsXPの場合)
通信を開始するには、Openメソッドを使って送受信を行う準備をします。Openメソッドには、引数が必要です。クライアントとして動作する場合は、引数は"0"を指定します。サーバーとして動作する場合は、ポート番号を示す番号またはサービス名を指定します。たとえば、UNIXのSNMPサーバーに問い合わせを行うには、"0"を指定します(UDPOCXをクライアントして利用する)。また、SMNPサーバーをUDPOCXを用いて構築するには、"161" を指定します(UDPOCXをサーバーとして利用する)。Openメソッドに成功すると、Readyイベントが発生します。 |
Readyイベントが発生したら、送受信が可能になります。データを送信したい場合は、SendToメソッドを使用します。SendToメソッドには送信先のIPアドレス、ポート番号、送信データを渡します。連続してデータを送信することはできません。複数のデータを送信するには、送信後Sentイベントの発生を待たなくてはなりません。 |
データが到着するとReceivedイベントが発生します。Receivedイベントの引数には、相手先のIPアドレス、ポート番号、データがはいっています。データを返信する場合はこのIPアドレスおよびポート番号を使用します。UDPOCXをサーバーとして利用する場合は、ここで新しいUDPOCXオブジェクトを作成し、それ以降の送受信をその新しいオブジェクトに任せます。もちろん、1つのオブジェクトでサーバーを構成することも可能ですが、通常かなり複雑な処理が必要になります。 |
通信を終了する場合は、Closeメソッドを使用します。Closeメソッドを発行するとClosedイベントが発生します。Closedイベントはエラーのときも発生します。 |
UDPでは同一セグメント内でのブロードキャストが可能です。ブロードキャストを行うには、BroadCastプロパティをTrueにしてください。これを行わないと、ブロードキャストアドレスを指定しても、ブロードキャストとは扱われません。 |
UDPは512バイトから65535までの大きさのパケットを扱えます。上限はシステムによってきまりますので、汎用的なサーバーを作る場合は、512バイトのパケットになるように設計してください。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
Value | 任意のデータです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
Value | ブロードキャスト送信するかどうかを指定します。次の設定値を参照してください。 |
(値) | (説 明) |
True | ブロードキャスト送信をします。 |
False | ブロードキャスト送信しません。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(値) | (説 明) |
True | 通信可能です。 |
False | 通信不可能です。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
ソケット
ソケットとはプロセス間通信によるデータ送受信を行うアプリケーションを
作成するためのプログラミング・インターフェース(API)です。
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) | |
STATE_CLOSED | 0 | 接続していません |
STATE_OPEN | 1 | 開いています |
STATE_LISTENING | 2 | 接続聴取中です |
STATE_CONNECTION_PENDING | 3 | 接続待機中です |
STATE_RESOLVING_HOST | 4 | ホスト名解決中です |
STATE_HOST_RESOLVED | 5 | ホスト名が解決しました |
STATE_CONNECTIONING | 6 | 接続処理中です |
STATE_CONNECTED | 7 | 接続しました |
STATE_CLOSING | 8 | 切断処理中です |
STATE_ERROR | 9 | エラーです |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
Value | データ領域を指定する文字列式です。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
Value | データ領域を指定する文字列式です。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
LocalPort | ローカルのポート番号、またはサービス名を指定します。空文字列も指定可能です。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
RemoteIp | 送信相手のIPアドレスを指定します。ホスト名の指定も可能です。 |
RemotePort | 送信相手のポート番号を指定します。サービス名の指定も可能です。 |
Data | 送信するデータを指定します。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
host | ホストバイトオーダーの長整数(4バイト)値です。 |
net | ネットワークバイトオーダーの値です。型はStringですが、実際にはバイナリ値が格納されています。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
host | ホストバイトオーダーの整数(2バイト)値です。 |
net | ネットワークバイトオーダーの値。型はStringですが、実際にはバイナリ値が格納されています。 |
Sendメソッドを使用してバイナリ値を送る場合、バイトオーダーが重要なデータの場合、このメソッドで変換してください。netは必ず変数を用いてください。変数以外を指定するとエラーになります。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
host | ホストバイトオーダーの長整数(4バイト)値です。 |
net | ネットワークバイトオーダーの値。型はStringですが、実際にはバイナリ値を指します。 |
Receivedイベントの引数Dataにバイナリ値が含まれていてバイトオーダーが重要なデータのときは、このメソッドで変換してください。 |
ネットワークバイトオーダーのバイナリ値をホストバイトオーダーに変換します。引数netはString型ですが、このメソッドは先頭から2バイトだけを変換対象とします。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
host | ホストバイトオーダーの整数(2バイト)値です。 |
net | ネットワークバイトオーダーの値。型はStringですが、実際にはバイナリ値を指します。 |
Receivedイベントの引数Dataにバイナリ値が含まれていてバイトオーダーが重要なデータのときは、このメソッドで変換してください。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
LocalIp | ローカルIPアドレスです。 |
RemoteHost | 接続先アドレスです。 |
通信で使用されるローカルアドレスは、接続先によって変わることがあります。 HostIpは、接続先(RemoteHost)へのコネクションを作成してローカルアドレスを得ます。Windows2000のみ動作します。 尚、Windows 2000以外では、ホスト名に対応したIPアドレスを得ます。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
IpAddress | 通信相手のIpAddress (ドット区切り形式)が格納されます。 |
Port | 通信相手のポート番号の整数の文字列式が格納されます。 |
Data | socketから読み込んだデータの文字列式が格納されます。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
(指定項目) | (内 容) |
Object | UDPOCXオブジェクトです。 |
Ecode | エラーコードです。 |
Description | エラー内容です。 |
Where | エラーが発生した関数名です。 |
CancelClose | このイベント後にClose処理をするかどうか指定します。次の「設定値」を参照してください。 |
(値) | (説 明) |
True | Close処理を行わない。 |
False | Close処理を行う。(デフォルト) |
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 | データがない |
(TFTP Ver1.0)
FTPは、UDPOCXを用いたTFTPサーバーのサンプルプログラムです。 TFTPとは、単純なファイル転送プロトコルです。異なるネットワークにあるマシン間のファイル転送をUDPで行っています。 TFTPサンプルプログラムは、サーバーに接続するユーザーに開放するディレクトリを指定することができます。 |
![]() |
<サーバー機能>
<クライアント機能>
|
(Bootpd Ver1.0)
Bootpdは、ディスクレス・クライアント・マシンに自分自身のIPアドレスや、サーバーのアドレス、ロードして実行すべきファイルの名前を見つけて提供します。 その為に予め、各クライアントマシンのMACアドレスに対して情報を設定しておきます。 以下に示す設定項目を入力後、「ADD」ボタンを押すと、リストボックスに提供する情報が追加されます。 |
![]() |
|
Syslogdは、UNIXのSyslogサーバーからの転送データを表示します。 転送されてきたデータをクリックすると、情報が表示されます。 |
|
(timed Ver1.0)
ブロードキャストでサーバーに要求できるUDPを使って、サーバーに時刻を問い合わせて表示します。 | ![]() |
|
UDPを利用したチャットサンプルです。
ブロードキャストのIPを指定すると1対多でのチャットが行えます。
|
(C) Copyright 1998-2003 WILL Corporation. Allrights reserved.