UDPOCXマニュアル


は じ め に

商品に含まれるもの

  1. CD-ROM
  2. 使用許諾契約書

 

動作環境について

■対応OS

UDPOCXは、以下に示すOSで動作確認を行っております。
Microsoft Windows 95、Microsoft Windows 98、
Microsoft WindowsNT 4.0、Microsoft Windows 2000
Microsoft Windows XP、Microsoft Windows 2003

 

■開発に必要なソフトウェア

UDPOCXをご使用いただくには、以下のいずれかのソフトウェアが必要です。
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で作成しています。
※本製品は日本語環境のみの対応となります。

 

インストール

製品のCD-ROMに含まれているセットアップキット(Willware.exe)をダブルクリックします。

画面にしたがって、インストールを進めて下さい。

1.インストールを始めます。「次へ」をクリックして下さい。

2.使用許諾契約書です。内容に同意される場合は「次へ」をクリックして下さい。

3.インストール先のフォルダを指定します。
初期設定でよろしければ「次へ」をクリックして下さい。
別のフォルダを指定したい場合は「参照」をクリックし、フォルダを指定して下さい。

4.インストール中に置換されるファイルのバックアップを作成できます。
そのバックアップファイルの保存先フォルダを指定します。
初期設定でよろしければ「次へ」をクリックして下さい。

5.WILLWARE Components を登録するスタートメニュー又はプログラムマネージャのグループフォルダを指定します。
初期設定では、新規に「WILLWARE Components」の名前でフォルダを作成します。
特に指定する必要がなければ、初期設定をお勧めします。

6.プログラムのコピーを開始します。「次へ」をクリックして下さい。

7.プログラムのコピーをしています。中断する場合は、「キャンセル」をクリックして下さい。

8.インストールが完了しました。「完了」をクリックし、インストールを終了して下さい。

 

ライセンスの登録

■レジストリファイルから登録する

ライセンスを登録します。
製品に含まれているフロッピーディスクのレジストリファイル(EUXXXXXXXXX.reg)をダブルクリックして下さい。
(「XXXXXXXXX」は、任意の数字がファイル名として付けられています。)

以下のメッセージボックスが表示され、ライセンスがレジストリに登録されます。

 

■手動で登録する

あらかじめ電子メールで通知しているライセンス情報を利用してライセンスを登録する等、レジストリファイルを利用しない場合は、VisualBasic起動後に新規プロジェクトを選択し以下のデザイン画面を開きます。

ツールボックスを右クリックしてメニューから「プロジェクト」を選択し、「コンポーネント」画面を開きます。次にコントロールタブの一覧からUDPOCXを選択して「OK」をクリックすると、UDPOCXがツールボックスに追加され、アイコンが表示されます。

ツールボックスに追加されたUDPOCXを選択し、フォームにアイコンを貼り付け、プロパティの「(バージョン情報)」をクリックすると、以下の「WILL LICENSE REGISTRATION」画面が表示されます。ここで、ユーザー名、シリアル番号、キーコードをそれぞれ入力してライセンス登録を行います。

 

■トライアルライセンスから正規ライセンスへの移行

既にトライアルライセンスが登録されている場合には、デザイン画面にあるUDPOCXのプロパティで「バージョン情報」をクリックして下さい。

「WILL LICENSE REGISTRATION」画面が表示されますので、ここで正規ライセンスを入力して下さい。

 

■ライセンス入力時のご注意

※ライセンスが入力できない!?
入力したライセンスにスペースが含まれていないか確認して下さい。
(ライセンスに、スペースは使用していません。)
※登録したライセンスを認識しない!?
ライセンスを登録しても、オブジェクトが新規ライセンスを認識していない場合は、
UDPOCXのアイコンを少し動かして下さい。
この作業により、オブジェクトにライセンスが記憶されます。
※トライアルライセンスで作成したアプリケーションはどうする!?
既にトライアルライセンスで作成したアプリケーションは、
正規ライセンスを登録した後、再コンパイルする必要があります。

 

サンプルを見る

インストールが完了すると、スタートメニューに「WILLWARE Components」が追加されます。

「WILLWARE Components」の「サンプル」を起動すると「WILLWARE Components サンプル」画面が表示されます。サンプルの起動、またはそれぞれのソースを開くことができます。但し、ソースを開くにはライセンスが必要です。トライアルライセンス又は、正規ライセンスを登録してご利用下さい。(ライセンスの登録方法は前項の「ライセンスの登録」をご覧下さい。)

 

サポートについて(無償)

サポートは基本的に電子メールで受け付けております。
サポートは無償でご利用いただけます。

 

■お問い合わせの前に

サポート作業を円滑に行うために、お問い合わせの際には以下の情報をご用意下さい。
  1. 製品名及びバージョン
  2. 開発環境(OSの種類及びバージョン、サービスパッケージの種類)
  3. 開発ツール及びバージョン
  4. サーバの種類
  5. 問題点

 

■FAQ

弊社ホームページの「サポート」のページで、キーワードを入力してFAQを検索できます。
休業日などサポートの対応が遅れる場合もありますので、まずはこちらをご確認下さい。

 

■お問合せ先

info@will-ltd.co.jp

 

バージョンアップについて(無償)

製品のバージョンアップは、すべて無償です。

 

■バージョンアップ情報の入手方法

バーションアップの情報は、弊社ホームページの新着情報で通知し、
各商品のページの更新履歴で更新内容を掲示致します。

 

■最新バージョンの入手方法

最新バージョンのプログラムは、弊社ホームページ(http://www.will-ltd.co.jp/)のダウンロードのページよりダウンロードすることが出来ます。ダウンロードするファイルは、以下のバージョンアップの目的により異なりますのでご注意下さい。

●WILLWARE Components(全製品用)セットアップキットを利用してバージョンアップ

ファイル名:「Willware.exe」

WILLWARE Components(全製品用)セットアップキットは全ての製品をインストールするためのものです。そのため本製品以外の製品及びサンプル、マニュアルも同時にバージョンアップされます。

●各コンポーネント毎のセットアップキットを利用してバージョンアップ

ファイル名:「○○○ocx.exe」

各コンポーネントのファイル(ocx、dll)及び、依存ファイルのみバージョンアップされます。サンプル及びマニュアルはバージョンアップされませんのでご注意下さい。

 

■バージョンアップをする前に

各セットアップキットを利用してバーションアップをする前に、以下のことにご注意下さい。

● WILLWARE Components(全製品用)セットアップキットを利用してバージョンアップする場合は、古いバージョンをアンインストールしてから、最新バージョンをインストールすることをお勧めいたします。

※ アンインストールの方法は、スタートメニューから「設定」→「コントロールパネル」→「アプリケーションの追加と削除」の画面で、「WILLWARE Components」を選択し、画面の指示に従って行って下さい。

● 各コンポーネント毎のセットアップキットを利用してバージョンアップする場合は、最新バージョンをそのままインストールして下さい。古いファイルは上書きされます。

※ 弊社製品を複数ご利用いただいている場合、いずれか1つをバーションアップしても他の製品に影響はありません。

 

■バージョンアップの方法

セットアップキットをダブルクリックし、画面の指示に従ってインストールを進めて下さい。

 

再配布について

■作成したアプリケーションの配布時

UDPOCXを利用して作成したアプリケーションの配布時のランタイムライセンスはフリーです。
但し、開発ライセンスの配布はできません。

 

■再配布時に必要な配布可能ファイル

UDPOCXを利用して作成したアプリケーションを配布する場合には、以下のファイルを添付する必要があります。
( )内は推奨バージョンです。

※セットアップウィザードを使用する場合

UDPOCXをインストールすると、自動的にOCXの依存ファイルが以下のディレクトリにインストールされます。

C:\Windows\system (Windows95, Windows98の場合)
C:\WINNT\system32 (WindowsNT4.0, Windows2000, Windows2003の場合)
C:\Windows\system32 (WindowsXPの場合)
セットアップウィザードを実行すると自動的にアプリケーション配布時に必要なOCX
(内部で利用しているOCX)と、DLLファイルがSetup.lstファイルに追加されます。

 

■著作権

 


プログラミング概要

 

通信を開始する

通信を開始するには、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バイトのパケットになるように設計してください。

 


状態遷移図

 


プロパティ

 

AnyDataプロパティ

■機 能

任意のデータを保持します。

 

■構 文

Object.AnyData[=Value]
AnyDataプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
Value 任意のデータです。

 

■データ型

バリアント型(Variant)

 

Broadcastプロパティ

■機 能

ブロードキャスト送信をするかどうかを指定します。
Trueにすると、ブロードキャスト送信を行います。

 

■構 文

Object.Broadcast[=Value]
Broadcastプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
Value ブロードキャスト送信するかどうかを指定します。次の設定値を参照してください。

 

■設定値

Value設定値は次の通りです。
(値) (説 明)
True ブロードキャスト送信をします。
False ブロードキャスト送信しません。

 

■データ型

ブール型(Boolean)

 

Copyrightプロパティ

■機 能

UDPOCXのバージョンと著作権情報です。
UDPOCXを用いるアプリケーションは、これを画面又はドキュメントに表示しなければなりません。
この値は参照のみ可能です。

 

■構 文

Object.Copyright
Copyrightプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

LastErrorプロパティ

■機 能

Winsockで何らかのエラーが発生したとき、Winsockの返すエラーコードが格納されます。
値の意味は巻末の「Winsockのエラーコード」を参照して下さい。
このプロパティはエラーが発生すると上書きされます。

 

■構 文

Object.LastError
LastErrorプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

長整数(Long)

 

LocalHostプロパティ

■機 能

実行中のマシンのホスト名が格納されています。参照のみ可能です。

 

■構 文

Object.LocalHost
LocalHostプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

LocalAddressプロパティ

■機 能

ローカルのIPアドレスを指定します。通常は指定する必要はありません。
ネットワークカードが2枚以上刺さっている場合に、特定のカード上のネットワークで通信したい場合には必ず指定しなければなりません。

 

■構 文

Object.LocalAddress
LocalAddressプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

LocalIpプロパティ

■機 能

接続が確立した時点での、ローカルホストのIPアドレスが格納されます。
参照のみ可能です。

 

■構 文

Object.LocalIp
LocalIpプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

長整数(Long)

 

LocalPortプロパティ

■機 能

接続が確立した時点での、ローカルホストのポート番号が格納されます。
参照のみ可能です。

 

■構 文

Object.LocalPort
LocalPortプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

整数(Integer)

 

Sendableプロパティ

■機 能

UDPOCXが送信可能状態かどうかを示します。
送信可能状態であれば、Trueが、そうでなければ、Falseが格納されます。
参照のみ可能です。

 

■構 文

Object.Sendable
Sendableプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■参照値

参照値は次のとおりです。
(値) (説 明)
True 通信可能です。
False 通信不可能です。

 

■データ型

ブール型(Boolean)

 

■解 説

送信処理が完了するには、時間がかかります。
Sendメソッドを用いてデータを送信すると、SendableはFalseとなり、
送信が完了してSentイベントが発生する直前に、SendableはTrueになります。

 

Socketプロパティ

■機 能

ソケットハンドルを格納します。
-1のときはソケットが無効状態で、通信が行われていません。
参照のみ可能です。

 

■構 文

Object.Socket
Socketプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

長整数(Long)

 

■単語解説

ソケット
ソケットとはプロセス間通信によるデータ送受信を行うアプリケーションを
作成するためのプログラミング・インターフェース(API)です。

 

Stateプロパティ

■機 能

UDPOCXの状態を示します。参照のみ可能です。

 

■構 文

Object.State
Stateプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
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 エラーです

 

■データ型

整数(Integer)

 

UserData1〜5プロパティ

■機 能

アプリケーションが自由に利用できるデータ領域です。
バイナリデータは格納できません。

 

■構 文

Object.UserData[=Value]
UserDataプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
Value データ領域を指定する文字列式です。

 

■データ型

文字列(String)

 

UserFlagプロパティ

■機 能

アプリケーションが自由に利用できるデータ領域です。
バイナリデータは格納できません。

 

■構 文

Object.UserFlag[=Value]
UserFlagプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
Value データ領域を指定する文字列式です。

 

■データ型

文字列(String)

 

WinsockVerプロパティ

■機 能

UDPOCXが使用しているWinsockのバージョンを格納しています。
参照のみ可能です。

 

■構 文

Object.WinsockVer
WinsockVerプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

WinsockDescプロパティ

■機 能

UDPOCXが使用しているWinsockの情報を格納しています。
参照のみ可能です。

 

■構 文

Object.WinsockDesc
WinsockDescプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

WinsockSysStatプロパティ

■機 能

UDPOCXが使用しているWinsockのシステム状況を格納しています。参照のみ可能です。

 

■構 文

Object.WinsockSysStat
WinsockSysStatプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

WinsockMaxSocketsプロパティ

■機 能

UDPOCXが使用しているWinsockが生成できるソケットの最大数を格納しています。
参照のみ可能です。

 

■構 文

Object.WinsockMaxSockets
WinsockMaxSocketsプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 

WinsockMaxDatagramプロパティ

■機 能

UDPOCXが使用しているWinsockが生成できるdatagramの最大パケット数を格納しています。
参照のみ可能です。

 

■構 文

Object.WinsockMaxDatagram
WinsockMaxDatagramプロパティの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■データ型

文字列(String)

 


メソッド

Openメソッド

■機 能

Openメソッドはソケットを作成します。
ポート番号が指定された場合は、そのポートにbindします。
通常、明示的にポートを指定すると、そのソケットはサーバーとして振舞うことが出来ます。
ただし、“0”が指定された場合は、Winsockにより自動的に空きポートが割り振られます。
また、ポート番号が指定されていない場合、UDPOCXは“0”が指定されたものとして処理します。
この場合、このソケットは主にクライアントとして振舞います。

 

■構 文

Object.Open(LocalPort As String)
Openメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
LocalPort ローカルのポート番号、またはサービス名を指定します。空文字列も指定可能です。

 

■戻り値

なし。

 

■解 説

クライアントアプリケーションを作成する場合は、ポート番号に空文字列を指定してください。

 

SendToメソッド

■機 能

データを送信します。

 

■構 文

Object. SendTo (RemoteIp As String, RemotePort As String, Data As String)
SendToメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
RemoteIp 送信相手のIPアドレスを指定します。ホスト名の指定も可能です。
RemotePort 送信相手のポート番号を指定します。サービス名の指定も可能です。
Data 送信するデータを指定します。

 

■戻り値

なし。

 

Closeメソッド

■機 能

通信を終了します。

 

■構 文

Object.Close()
Closeメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

■戻り値

なし。

 

■解 説

このメソッドを呼び出すと、送信待ちのデータはすべて破棄されます。
最終データの送信後、通信を終了する場合は、送信完了のSentイベントを受け取ってからCloseメソッドを使用してください。
Sentイベントを受け取らずにCloseメソッドを使用するとデータが送信されずに通信を終了することがあります。

 

htonlメソッド

■機 能

ホストバイトオーダーのバイナリ値をネットワークバイトオーダーに変換します。
戻り値netはString型ですが、先頭から4バイト分に有効な値が入っています。

 

■構 文

net = Object.htonl(host As long)
htonlメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
host ホストバイトオーダーの長整数(4バイト)値です。
net ネットワークバイトオーダーの値です。型はStringですが、実際にはバイナリ値が格納されています。

 

■戻り値

文字列(String)

 

■解 説

Sendメソッドを使用してバイナリ値を送る場合、
バイトオーダーが重要なデータの場合、このメソッドで変換してください。
netは必ず変数を用いてください。
変数以外を指定するとエラーになります。

 

htonsメソッド

■機 能

ホストバイトオーダーのバイナリ値をネットワークバイトオーダーに変換します。
戻り値netはString型ですが、先頭から2バイト分に有効な値が入っています。

 

■構 文

net = Object.htons(host As Integer)
htonsメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
host ホストバイトオーダーの整数(2バイト)値です。
net ネットワークバイトオーダーの値。型はStringですが、実際にはバイナリ値が格納されています。

 

■戻り値

文字列(String)

 

■解 説

Sendメソッドを使用してバイナリ値を送る場合、バイトオーダーが重要なデータの場合、このメソッドで変換してください。netは必ず変数を用いてください。変数以外を指定するとエラーになります。

 

ntohlメソッド

■機 能

ネットワークバイトオーダーのバイナリ値をホストバイトオーダーに変換します。
引数netはString型ですが、このメソッドは先頭から4バイトだけを変換対象とします。

 

■構 文

host = Object.ntohl(net As String)
ntohlメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
host ホストバイトオーダーの長整数(4バイト)値です。
net ネットワークバイトオーダーの値。型はStringですが、実際にはバイナリ値を指します。

 

■戻り値

長整数(Long)

 

■解 説

Receivedイベントの引数Dataにバイナリ値が含まれていてバイトオーダーが重要なデータのときは、このメソッドで変換してください。

 

ntohsメソッド

■機 能

ネットワークバイトオーダーのバイナリ値をホストバイトオーダーに変換します。引数netはString型ですが、このメソッドは先頭から2バイトだけを変換対象とします。

 

■構 文

host = Object.ntohs(net As String)
ntohsメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
host ホストバイトオーダーの整数(2バイト)値です。
net ネットワークバイトオーダーの値。型はStringですが、実際にはバイナリ値を指します。

 

■戻り値

整数(Integer)

 

■解 説

Receivedイベントの引数Dataにバイナリ値が含まれていてバイトオーダーが重要なデータのときは、このメソッドで変換してください。

 

HostIpメソッド

■機 能

接続先に応じたローカルアドレスを得ます。

 

■構 文

LocalIp = HostIp(RemoteHost As String)
HostIpメソッドの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
LocalIp ローカルIPアドレスです。
RemoteHost 接続先アドレスです。

 

■戻り値

文字列(String)

 

■解 説

通信で使用されるローカルアドレスは、接続先によって変わることがあります。
HostIpは、接続先(RemoteHost)へのコネクションを作成してローカルアドレスを得ます。Windows2000のみ動作します。
尚、Windows 2000以外では、ホスト名に対応したIPアドレスを得ます。

 


イベント

Readyイベント

■機 能

Openメソッドで作成したソケットが書き込み可能状態になったときに発生します。
なお、ソケットにエラーが発生すると、一時的に書き込み不可能状態になることがあります。
エラーが復旧し、再び書き込み可能状態になったときには、Readyイベントは発生しません。

 

■構 文

Private Sub Object_Ready()
Readyイベントの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

Receivedイベント

■機 能

通信相手からデータが到着したときに発生します。
渡される引数に受け取ったデータが格納されています。

 

■構 文

Private Sub Object_Received
(ByVal IpAddress As String, ByVal Port As String, ByVal Data As String)
Receivedイベントの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
IpAddress 通信相手のIpAddress (ドット区切り形式)が格納されます。
Port 通信相手のポート番号の整数の文字列式が格納されます。
Data socketから読み込んだデータの文字列式が格納されます。

 

■解 説

渡されたデータをVisualbasicの文字列処理関数で処理するには、Unicodeに変換しなくてはなりません。

 

Sentイベント

■機 能

Sendメソッドが実行された後、再び送信可能状態になったとき発生します。
このとき、SendableはTrueとなっています。

 

■構 文

Private Sub Object_Sent()
Sentイベントの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。

 

WsErrorイベント

■機 能

何らかのエラーが発生したときに発生します。
この後、Closedイベントが発生します。
なお、CancelCloseはUDPOCXの内部デバッグ用途にのみ使用しますので、
設定しないでください。

 

■構 文

Private Sub Object_WsError
(ByVal Ecode As Long, ByVal Description AsString, ByVal Where As String, CancelClose As Boolean)
WsErrorイベントの構文の指定項目は次の通りです。
(指定項目) (内 容)
Object UDPOCXオブジェクトです。
Ecode エラーコードです。
Description エラー内容です。
Where エラーが発生した関数名です。
CancelClose このイベント後にClose処理をするかどうか指定します。次の「設定値」を参照してください。

 

■設定値

CancelCloseの設定値は次の通りです。
(値) (説 明)
True Close処理を行わない。
False Close処理を行う。(デフォルト)

 


Winsockエラーコード

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

(TFTP Ver1.0)

FTPは、UDPOCXを用いたTFTPサーバーのサンプルプログラムです。
TFTPとは、単純なファイル転送プロトコルです。異なるネットワークにあるマシン間のファイル転送をUDPで行っています。
TFTPサンプルプログラムは、サーバーに接続するユーザーに開放するディレクトリを指定することができます。

■使い方

<サーバー機能>
  • 公開するディレクトリ
    公開するディレクトリを指定して下さい。「サーバー開始」ボタンを押すと指定したディレクトリが公開されます。

<クライアント機能>

  • TFTPサーバーIP
    公開するディレクトリのある(サーバーにする)マシンのIPアドレスを指定して下さい。

  • リモートファイル名
    公開するディレクトリにある(または新規に作成する場合の)ファイル名を指定して下さい。

  • ローカルファイル名
    ローカルマシンにある(または新規に作成する場合の)ファイル名を指定して下さい。

  • 転送モード
    ファイルの転送モードを選択して下さい。

 


Bootpd

(Bootpd Ver1.0)

Bootpdは、ディスクレス・クライアント・マシンに自分自身のIPアドレスや、サーバーのアドレス、ロードして実行すべきファイルの名前を見つけて提供します。
その為に予め、各クライアントマシンのMACアドレスに対して情報を設定しておきます。
以下に示す設定項目を入力後、「ADD」ボタンを押すと、リストボックスに提供する情報が追加されます。

 

■使い方

  • MACアドレス (16進数)
    クライアントのマシンに予め指定されているMACアドレスを16進数で入力します。イーサネットの場合は12桁になります。

  • 対応IPアドレス
    ドット付きの10進数で入力して下さい。リストボックスには、32ビット整数表示されます。

  • TFTPサーバーIPアドレス
    使用するTFTPサーバーのIPアドレスを指定して下さい。

  • ファイル名
    TFTPを行うファイル名を指定して下さい。

 


Syslogd

Syslogdは、UNIXのSyslogサーバーからの転送データを表示します。

転送されてきたデータをクリックすると、情報が表示されます。

 


timed

(timed Ver1.0)

ブロードキャストでサーバーに要求できるUDPを使って、サーバーに時刻を問い合わせて表示します。

■使い方

  • TIMEサーバーのIPアドレスを指定して、「問い合わせ」ボタンを押して下さい。リストボックスに時刻が表示されます。

  • ブロードキャストで問い合わせる場合は、IPアドレスを「255.255.255.255」と指定して下さい。

 


CHAT de UDP

UDPを利用したチャットサンプルです。
ブロードキャストのIPを指定すると1対多でのチャットが行えます。

  1. 送信先アドレスのテキストボックスに、IPアドレスまたは、ホスト名を指定します。このとき、ブロードキャストのIPを指定すると、起動している「CHAT de UDP」全てにメッセージを送ることができます。
  2. 送信メッセージのテキストボックスに、メッセージを入力します。
  3. 「送信」ボタンを押すと、メッセージが送信されます。
  4. 下段のリストボックスに受信したメッセージが表示されます。

    ※ポート番号は、50001固定です。


発行所 株式会社ウィル

(C) Copyright 1998-2003 WILL Corporation. Allrights reserved.