Microsoft Windows 95、Microsoft Windows 98、
Microsoft WindowsNT 4.0、Microsoft Windows 2000
Microsoft Windows XP、Microsoft Windows 2003
SNMPOCXをご使用いただくには、以下のいずれかのソフトウェアが必要です。
Microsoft Visual Basic Ver 5.0
Microsoft Visual Basic Ver 6.0
Microsoft Office 2000 (Access、Excel)
尚、SNMPOCXを動作させるには以下の環境が必要ですが、
開発環境ではインストールの際に自動的に組み込まれます。
VB5ランタイムDLL(SP3以上)
MFC42ランタイムDLL
UDPOCX 1.07
INT64DLL 1.01
SNMPOCXは、Microsoft Visual Basic Ver 5.0で作成しています。サンプルは、Microsoft Visual Basic
Ver 5.0で作成しています。 ※ 本製品は日本語環境のみの対応となります。 |
2. 画面にしたがって、インストールを進めて下さい。
(1) インストールを始めます。「次へ」をクリックして下さい。
(2) 使用許諾契約書です。
内容に同意される場合は「次へ」をクリックして下さい。
あらかじめ電子メールで通知しているライセンス情報を利用してライセンスを登録する等、レジストリファイルを利用しない場合は、VisualBasic起動後に新規プロジェクトを選択し以下のデザイン画面を開きます。 |
ツールバーの「プロジェクト」から、「コンポーネント」を選択し、「コンポーネント」画面を開きます。次にコントロールタブの一覧から「WILL SNMP Send OCX」及び「WILL SNMP Trap OCX」を選択して「OK」をクリックすると、それぞれのアイコンがツールボックスに追加されます。 |
ツールボックスに追加されたOCXを選択し、フォームにアイコンを貼り付け、プロパティの「(バージョン情報)」をクリックすると、以下の「WILL LICENSE REGISTRATION」画面が表示されます。ここで、ユーザー名、シリアル番号、キーコードをそれぞれ入力してライセンスの登録を行います。 |
既にトライアルライセンスが登録されている場合には、デザイン画面にあるOCXのプロパティで「(バージョン情報)」をクリックして下さい。 |
※ライセンスが入力できない!?
入力したライセンスにスペースが含まれていないか確認して下さい。(ライセンスに、スペースは使用していません。) ※登録したライセンスを認識しない!? ライセンスを登録しても、オブジェクトが新規ライセンスを認識していない場合は、SNMPOCXのアイコンを少し動かして下さい。この作業により、オブジェクトにライセンスが記憶されます。 ※トライアルライセンスで作成したアプリケーションはどうする!? 既にトライアルライセンスで作成したアプリケーションは、正規ライセンスを登録した後、再コンパイルする必要があります。 |
インストールが完了すると、スタートメニューに「WILLWARE Components」が追加されます。 |
「WILLWARE Components」の「サンプル」を起動すると「WILLWARE Components サンプル」画面が表示されます。サンプルの起動、またはそれぞれのソースを開くことができます。但し、ソースを開くにはライセンスが必要です。トライアルライセンス又は、正規ライセンスを登録してご利用下さい。(ライセンスの登録方法は前項の「ライセンスの登録」をご覧下さい。) |
弊社ホームページの「サポート」のページで、キーワードを入力してFAQを検索できます。休業日などサポートの対応が遅れる場合もありますので、まずはこちらをご確認下さい。 |
info@will-ltd.co.jp
製品のバージョンアップは、すべて無償です。
バーションアップの情報は、弊社ホームページの新着情報で通知し、各商品のページの更新履歴で更新内容を掲示致します。 |
最新バージョンのプログラムは、弊社ホームページ(http://www.will-ltd.co.jp/)のダウンロードのページよりダウンロードすることが出来ます。ダウンロードするファイルは、以下のバージョンアップの目的により異なりますのでご注意下さい。
|
各セットアップキットを利用してバーションアップをする前に、以下のことにご注意下さい。
|
セットアップキットをダブルクリックし、画面の指示に従ってインストールを進めて下さい。 |
SNMPOCXを大幅に変更しVer 2.00にバージョンアップいたしました。
主な変更点は、
です。
尚、バージョンアップではありますが、従来のコントロールとはバイナリ互換がありませんので、別コントロールとしてご提供します。 従来のソースコードから移行される場合は、下記の注意すべきメソッドとイベントを参考にして、ソースコードの変更をお願いします。 |
(従 来) | (Ver 2.00) |
SNMP.OCX | SNMPSEND.OCX (SNMP SendOCX 2.00) |
SENDTRAP.OCX | SNMPSEND.OCXに統合 |
------- | <新規>SNMPTRAP.OCX (SNMP TrapOCX 2.00) |
(従 来) | (Ver 2.00) |
GetSNMPStringメソッド | SNMPStringValueメソッド |
GetSNMPIntegerメソッド | SNMPIntegerValueメソッド |
GetSNMPCounterメソッド | SNMPCounterValueメソッド |
(従 来) |
(Ver 2.00) |
GetRequestメソッド | SendGetRequestメソッド |
GetNextRequestメソッド | SendGetNextRequestメソッド |
SetRequestメソッド | SendSetRequestメソッド |
Responseイベント
SNMPOCXを利用して作成したアプリケーションの配布時のランタイムライセンスはフリーです。但し、開発ライセンスの配布はできません。 |
SNMPOCXを利用して作成したアプリケーションを配布する場合には、以下のファイルを添付する必要があります。( )内は推奨バージョンです。
SNMPSEND.OCX(2.00)※セットアップウィザードを使用する場合 SNMPOCXをインストールすると、自動的にOCXの依存ファイルが以下のディレクトリにインストールされます。
セットアップウィザードを実行すると自動的にアプリケーション配布時に必要なOCX(内部で利用しているOCX)と、DLLファイルがSetup.lstファイルに追加されます。 |
|
SNMPOCXは、SNMP V1プロトコルをサポートするActiveXコンポーネント群です。 SNMPエージェント内にあるMIBT及びMIBU或いは、プライベートMIBの値を表示・変更することができます。 SNMPOCXは2つのコンポーネントSNMPSENDコントロールおよびSNMPTRAPコントロールで構成されます。 これら2つの総称をSNMPOCXと呼びます。 SNMPSENDコントロールは、SNMPマネージャーを作成するためのコンポーネントで、 |
SNMPはさまざまなネットワーク機器でサポートされるプロトコルです。 SNMPを利用すればネットワーク機器の状態監視を簡単に行なえます。 高機能なネットワーク機器は、機能変更をSNMPを利用して行なうことができます。 SNMPをサポートするネットワーク機器をSNMPエージェントと呼びます。 SNMPSENDコントロールは、VisualBasicなどActive X Controlを利用できる環境において SNMPエージェントから情報を収集またはSNMPエージェントのコントロールを行なうことを可能とするものです。 SNMPSENDコントロールのサンプルを試してみてください。 ネットワーク機器の状態が簡単に入手できることに気がつくことでしょう。 |
SNMPTRAPコントロールは、VisualBasicなどActive X Controlを利用できる環境から、 SNMP TRAP PDUを受信することを可能にするものです。 TRAPは、エージェントからマネージャへのイベント通知です。 イベントには、エージェントの開始、通信リンク障害、認証エラー、ノードダウン等の既定のイベントの他、ユーザー定義イベントがあります。 |
SNMPSENDコントロールの使い方は簡単です。 SNMPエージェントから情報を収集するためには、
の2つのメソッドを利用します。 収集したい情報にはIDがついています。 OIDがわからない場合は、SendGetNextRequestを使って代表的なOID "1.3.6"の次に存在するOIDを得ます。 SNMPエージェントに値を設定するには、
を使います。 たとえば、
や
を検索してみてください。これらの値は変更可能かもしれません。 OIDをオブジェクト名で表現するには、
を使います。 オブジェクト名にどのようなものがあるのか検索するには、
を使います。このメソッドにたとえば、"sys"という文字列を与えるとsysを含むオブジェクト名のリストをCollectionにしてくれます。 OIDとオブジェクト名の関係は、
で変更できます。これにより新規のOIDに名前をつけることができます。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
(定 数) | (説 明) |
0 | 初期状態。送受信不可です。 |
1 | 送信可能状態です。 |
2 | 送信中です。送信不可です。 |
WaitReady() Do While Snmp1.Stat <> 1 DoEvents Loop End Sub SendMult() WaitReady Request1 WaitReady Request2 WaitReady Request3 WaitReady End Sub |
TRAPデータに格納するエージェントアドレスを指定します。デフォルトは「""」です。 「""」の場合は、データが送信されるときに利用されたネットワークカードに設定されているIPアドレスです。 このプロパティは、SendTrapメソッド内で参照します。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Address | ドット付10進数です。例:"192.173.56.2"。 |
TRAPの原因となった機器のIPアドレスがわかる場合にのみ指定します。 「""」を指定すればPCのIPアドレスが設定されます。ホスト名を指定することはできません。 |
TRAPデータに格納するTickCount(1/100秒)を指定します。 デフォルトは「-1」です。「-1」の場合は、データが送信されるときにPCの起動開始時からの経過時間を設定します。 このプロパティは、SendTrapメソッド内で参照します。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Count | 経過時間(1/100秒単位)です。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Value | 文字列をUnicodeに変換するかどうかを指示する値です。 |
(定 数) | (説 明) |
0 | 初期状態。Unicodeに変換します。 |
1 | Unicodeに変換しません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ErrorStatus | エラーメッセージを示す整数です。 |
ErrorStatus(引数) | (戻 値) |
-1 | "FormatError" |
0 | "NoError" |
1 | "TooBig" |
2 | "NoSuchName" |
3 | "BadValue" |
4 | "ReadOnly" |
5 | "GenError" |
Else | "UnknownError" |
SNMPSENDコントロールが内部に持っているOIDとオブジェクト名リストをクリアします。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
なし
SNMPSENDコントロールが内部に持っているOIDとOIDに対応する名前リストにデータを追加します。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
OID | オブジェクト識別子です。 |
Name | オブジェクト名です。 |
ここで設定した値は、OID2Nameやname2OID、FindName各メソッドで利用されます。OIDを独自表記したい場合は、ClearOIDをした後、SetOIDを行なってください。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
OID | オブジェクト識別子です。 |
OIDの一部または全部をオブジェクト名に変換します。
たとえば、"1.3.6.1.2.1.1.2.0"であれば、内部に、 "1.3.6.1.2.1.1.2"は"iso.org.dod.internet.mgmt.mib.system.sysObjectID" であるという表がある場合には、 "iso.org.dod.internet.mgmt.mib.system.sysObjectID.0" のように変換されます。 この表は、SetOIDで変更可能です。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Name | オブジェクト名です。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Name | オブジェクト名の一部です。 |
Compere | 0 = バイナリ比較です。 1 = テキスト比較です(大文字と小文字を区別しない)。 |
指定したオブジェクト名の一部が一致するオブジェクト名一覧をCollectionとして戻します。これを利用するとオブジェクト名の一部がわかっている場合に正式名称を得ることができます。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Name | オブジェクト名です。 |
Name(引数) | (戻 値) |
"Integer" | 2 |
"OctetString" | 4 |
"Null" | 5 |
"ObjectID" | 6 |
"Sequence" | &H30 |
"IpAddress" | &H40 |
"Counter" | &H41 |
"Gauge" | &H42 |
"Timeticks" | &H43 |
"Opaque" | &H44 |
"GetRequest" | &HA0 |
"GetNextRequest" | &HA1 |
"GetResponse" | &HA2 |
"SetRequest" | &HA3 |
"Trap" | &HA4 |
Else | -1 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
SendGetRequestや、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | 整数です。例:"12345"。 |
ObjectValueには、32ビットまでの整数値を示す文字列を設定できます。 SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | 整数です。例:"12345"。 |
ObjectValueには、32ビットまでの整数値を示す文字列を設定できます。 SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | 文字列です。例:"sample"。 |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | IPアドレスです。例:"192.58.6.4"。 |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | 整数です。 |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | 経過時間を示す整数です。 |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。 生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
ObjectId | オブジェクトIDです。例:"1.3.6.1.4.1.5000.1"。 |
Value | バイナリ文字列です。例:ChrB$(&HFF) & ChrB$(&HFE) |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapの各メソッドのオブジェクトバリュー引数を、このメソッドを用いて作成します。生成されたデータは文字列型ですが、実態はバイナリですので、そのまま表示することはできません。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
RemoteIP | エージェントのIPアドレス。ホスト名でも結構です。 |
RemotePort | エージェントのポート番号。ポート名でも結構です。 |
Community | パスワードに相当します。 |
RequestId | 任意の数字です。 |
ObjectValue | オブジェクトバリューです。 |
GetRequest PDUメッセージを利用してエージェントにオブジェクトインスタンスの値の問い合わせを行ないます。エージェントがこのメッセージを受信したら、GetResponse
PDUメッセージを利用して応答します。 応答が無い場合には、RemoteIP,RemotePort,Communityのいずれかが間違っている可能性があります。 また、RemoteIPやRemotePortに正しくない値をいれると例外が発生します。 Readyイベントが発生するか、Statプロパティが1であることを確認してから、このメソッドを発行してください。 オブジェクトバリューは、SNMPNullValueの戻り値を文字列として結合したものです。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
RemoteIP | エージェントのIPアドレス。ホスト名でも結構です。 |
RemotePort | エージェントのポート番号。ポート名でも結構です。 |
Community | パスワードに相当します。 |
RequestId | 任意の数字です。 |
ObjectValue | オブジェクトバリューです。 |
GetNextRequest PDUメッセージを利用してエージェントに指定したオブジェクトインスタンスのつぎのオブジェクトインスタンス値の問い合わせを行ないます。エージェントがこのメッセージを受信したら、GetResponse
PDUメッセージを利用して応答します。 応答が無い場合には、RemoteIP,RemotePort,Communityのいずれかが間違っている可能性があります。 また、RemoteIPやRemotePortに正しくない値をいれると例外が発生します。 Readyイベントが発生するか、Statプロパティが1であることを確認してから、このメソッドを発行してください。 オブジェクトバリューは、SNMPNullValueの戻り値を文字列として結合したものです。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
RemoteIP | エージェントのIPアドレス。ホスト名でも結構です。 |
RemotePort | エージェントのポート番号。ポート名でも結構です。 |
Community | パスワードに相当します。 |
RequestId | 任意の数字です。 |
ObjectValue | 設定するオブジェクトバリューです。 |
SetRequest PDUメッセージを利用してエージェントの指定したオブジェクトインスタンスに値を設定します。エージェントがこのメッセージを受信したら、GetResponse
PDUメッセージを利用して応答します。値を設定できないオブジェクトインスタンスの場合はNoSuchNameエラーが、正しくない値を設定しようとするとBadValueエラーがResponseイベントのErrorStatusに格納されます。応答が無い場合には、RemoteIP,RemotePort,Communityのいずれかが間違っている可能性があります。
また、RemoteIPやRemotePortに正しくない値をいれると例外が発生します。 Readyイベントが発生するか、Statプロパティが1であることを確認してから、このメソッドを発行してください。 オブジェクトバリューは、SNMPNullValue, SNMPCounterValue, SNMPIntegerValue, SNMPStringValue, SNMPIpAddrValue, SNMPGaulgeValue, SNMPTimeTicksValue の戻り値を文字列として結合したものです。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
RemoteIP | TRAPを受信するSNMPマネージャ(サーバ)です。 |
RemotePort | TRAPを受信するSNMPマネージャのポート番号です。ポート名でも結構です。 |
Community | コミュニティ名です。 |
Enterprise | TRAPを発信する企業を示すObjectIDです。例:"1.3.6.1.4.1.5000" |
GenericTrapType | TRAPタイプです。 |
SpecificTrapType | TRAP詳細タイプです。 |
ObjectValue | トラップデータ(必要な場合のみ)です。 |
Enterpriseには、企業を示すオブジェクトIDを設定します。 GenericTrapTypeには、TRAPのタイプを指定します。 TRAPのタイプは7種類あります。
SpecificTrapTypeには、任意の整数を設定できます。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
RemoteIP | エージェントのIPアドレスです。(ドット付き10進数) |
RemotePort | エージェントのポート番号です。(通常161) |
Version | 使用しているSNMPバージョン番号です。(0:Version1)。固定値。 |
Community | コミュニティ名です。 |
Command | 送信したPDUのタイプ(A2)です。 |
RequestId | 指定したリクエストIDです。 |
ErrorStatus | エラー番号。Err2Strメソッドを使って文字列にできます。 |
ObjectCollection | Collection型のオブジェクトです。SNMPSendObjectクラスが格納されています。 |
RawData | 受信した生データです(バイナリ)。 |
RESPONSE PDUを受信したときに発生します。
ObjectCollectionは、SnmpSendObjectの集合です。
ObjectCollectionの内容を確認するには以下のようにコーディングします。
Dim v As SnmpSendObject For Each v In ObjectCollection Debug.Print "Object ID=" & v.OIDName Debug.Print "Object TYPENAME=" & v.OIDTypeName Debug.Print "Object TYPE=" & v.OIDType Debug.Print "Object VALUE=" & v.OIDValue Next |
あるいは下記のようにコーディングします。
Dim i& For i = 0 To ObjectCollection.Count - 1 Debug.Print "Object ID=" & ObjectCollection (CStr(i)).OIDName Debug.Print "Object TYPENAME=" & ObjectCollection (CStr(i)).OIDTypeName Debug.Print "Object TYPE=" & ObjectCollection (CStr(i)).OIDType Debug.Print "Object VALUE=" & ObjectCollection (CStr(i)).OIDValue Next |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapを発行できる状態になったとき発生します。 |
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapを連続して発行することはできません。
上記いずれかのメソッドを発行する場合は、Readyイベントを待ってください。 |
Statプロパティ。
(指定項目) | (内 容) |
Object | SNMPSENDコントロールオブジェクトです。 |
Ecode | Winsockエラーコードです。 |
Description | エラー番号に対応するエラーメッセージです。 |
Where | エラー発生場所です。 |
このイベントが発生するとエラーが発生する前に送信したSNMPメッセージに対する応答はすべて破棄されます。処理を再開するには、エラー後に発生するReadyイベントを待って再度SendGetRequest、SendGetNextRequest、SendSetRequest、SendTrapを発行してください。問題解析のためにこれらの情報を記録してください。 |
SNMPTRAPコントロールはTRAP PDUを受信します。
受信を開始するために、StartTrapメソッドを使います。
受信を終了するには、StopTrapメソッドを使います。
TRAP PDUを受信すると、Trapイベントが発生します。
Trapイベントには、11のパラメータがあります。
RemoteIP$ |
Trapを発生したマシンのIPアドレス |
RemotePort$ | Trapを発生したマシンのポート番号 |
Version% | SNMPのバージョン番号(0:Version1固定) |
Community$ | コミュニティ(パスワード) |
Enterprise$ | このTrapを定義した登録組織のオブジェクトID |
AgentAddress$ | トラップの送信元のIPアドレス |
GenericTrapType% | イベントの種類 |
SpecificType$ | 特殊なトラップの場合の詳細な情報(整数) |
TimeStamp$ | 経過時間(1/100秒) |
ObjectCollection As Collection | オブジェクト名とその値と型の情報の集合 |
RawData$ | 生データ(バイナリ文字列) |
ObjectCollectionは、SnmpTrapObjectの集合です。
ObjectCollectionの内容を確認するには以下のようにコーディングします。
Dim v As SnmpTrapObject |
あるいは下記のようにコーディングします。
Dim i& |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
(定 数) | (説 明) |
-1 | 初期状態です。(受信不可) |
0 | 受信開始待ちです。(受信不可) |
1 | 受信待ちです。(受信可能) |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
Value | 文字列をUnicodeに変換するかどうかを指示する値です。 |
(定 数) | (説 明) |
0 | 初期状態。Unicodeに変換します。 |
1 | Unicodeに変換しません。 |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
Port | 受信ポートです。通常は162です。 |
StartTrapを行うとTRAP PDUの受信が可能になります。 すでにStartTrap済みである場合、何もしません。 同じPCで受信しているプログラムがあると、トラップ可能なエラーが発生します。(Err.Number=10048) |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
StartTrapメソッドを実行した結果、受信可能状態になったことをプログラムに通知します。 |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
RemoteIP | TRAP PDUを送信したIPです。 |
RemotePort | TRAP PDUを送信したポート番号です。 |
Version | SNMPのバージョンです。(0:Version1固定) |
Community | コミュニティ名です。 |
Enterprise | TRAPを定義した企業のオブジェクトIDです。 |
AgentAddress | TRAPの原因となった機器のIPアドレスです。 (通常RemoteIPと一致) |
GenericTrapType | イベントの種類です。 |
SpecifiType | 特殊なトラップの場合の詳細な情報です。(整数) |
TimeStamp | トラップ発生時間です。(1/100秒) |
ObjectCollection | オブジェクト名とその値と型の情報の集合です。 |
RawData | 生データです。(バイナリ文字列) |
TRAP PDUを受信したとき、Trapイベントが発生します。
ObjectCollectionは、SnmpTrapObjectの集合です。
SnmpTrapObjectには、4つのメンバーがあります。
OIDName | オブジェクトID |
OIDTypeName | オブジェクトの型を示す文字列 |
OIDType | オブジェクトの型を示す整数 |
OIDValue | オブジェクトの値(Variant) |
オブジェクトの型を示す文字列と整数の関係は、以下のとおりです。
(整 数) | (名 前) |
2 | Integer |
4 | OctetString |
5 | Null |
6 | ObjectID |
&H40 | IpAddress |
&H41 | Counter |
&H42 | Gauge |
&H43 | TimeTicks |
&H44 | Opaque |
Else | 数値そのまま |
ObjectCollectionの内容を確認するには以下のようにコーディングします。
Dim v As SnmpTrapObject |
あるいは下記のようにコーディングします。
Dim i& Next |
(指定項目) | (内 容) |
Object | SNMPTRAPコントロールオブジェクトです。 |
Ecode | Winsockエラーコードです。 |
Description | エラーの説明です。 |
Where | エラー発生場所です。 |
(SNMP MANAGER 2.01)
SNMP MANAGER 2.01は、SNMPOCXを用いたサンプルプログラムです。
以下の2つの機能があります。
- MIB表示・設定機能
SNMPエージェントに存在するMIBの値を簡単に検索、設定。
- トラップの受信機能
トラップの受信。
SNMPエージェントに存在するMIBの値を簡単に検索し設定できます。
以下の手順に従ってサンプルをご使用ください。
|
「トラップを受信する。」のチェックボックスにチェックをつけると、
SNMPエージェントからのTRAP PDUを受信できます。
SendTrapメソッド 2.00
SNMPマネージャーにTRAPを通知するサンプルです。
以下の手順に従って、ご利用ください。
※「SNMP MANAGER 2.01」と併せて利用できます。
1.TRAP種別の設定
- 一般トラップタイプ
リストボックスにある7種類のトラップの中からからいずれかを選択します。
- 特別トラップタイプ
任意の数値を記入します。
- 企業ID
TRAPを発信する企業のオブジェクトIDを指定します。2.通知データの設定
- オブジェクトタイプ
データを通知する時のオブジェクトタイプを指定します。
- オブジェクトID
トラップを発信するオブジェクトIDを指定します。
- オブジェクト値
通知する値を指定します。3.TRAP受信サーバーの設定
- ホスト名(IPアドレス)
受信するSNMPマネージャーのIPアドレスを指定します。
- コミュニティ
受信するSNMPマネージャーのパスワードを指定します。4.TRAPの通知
1〜3の各項目の設定が完了したら、「送信」ボタンをくリックして
SNMPマネージャーに通知データが送信されることを確認して下さい。
発行所
株式会社ウィル
©Copyright 1998-2001 WILL Corporation. All rights reserved