次の方法で共有


SnmpOidCompare 関数 (winsnmp.h)

[SNMP は、[要件] セクションで指定されたオペレーティング システムで使用できます。 今後のバージョンでは変更されるか、利用できなくなる場合もあります。 代わりに、WS-Man の Microsoft 実装である Windows リモート管理を使用します。

WinSNMP SnmpOidCompare 関数は、 maxlen パラメーターで指定された長さまで、2 つの SNMP オブジェクト識別子を辞書式で比較します。

構文

SNMPAPI_STATUS SNMPAPI_CALL SnmpOidCompare(
  [in]  smiLPCOID xOID,
  [in]  smiLPCOID yOID,
  [in]  smiUINT32 maxlen,
  [out] smiLPINT  result
);

パラメーター

[in] xOID

比較する最初 の smiOID オブジェクト識別子へのポインター。 オブジェクト識別子の長さは 0 にすることができます。

[in] yOID

比較する 2 番目 の smiOID オブジェクト識別子へのポインター。 オブジェクト識別子の長さは 0 にすることができます。

[in] maxlen

0 に等しくない場合は、比較するサブ識別子の数を指定します。 このパラメーターは、MAXOBJIDSIZE: 128 サブ識別子 (オブジェクト識別子内のコンポーネントの最大数) より小さくする必要があります。 詳細については、次の「解説」セクションを参照してください。

[out] result

比較の結果を受け取る整数変数へのポインター。 変数は、次のいずれかの結果を受け取ることができます。

結果 意味
0 より大きい
xOIDyOID より大きい
0 に等しい
xOIDyOID と等しい
0 より小さい。
xOIDyOID より小さい
 

その他の比較条件については、次の「解説」セクションを参照してください。

戻り値

関数が成功した場合、戻り値はSNMPAPI_SUCCESS。

関数が失敗した場合、戻り値はSNMPAPI_FAILURE。 拡張エラー情報を取得するには、セッション パラメーターに NULL 値を指定して SnmpGetLastError を呼び出します。 SnmpGetLastError 関数は、次のいずれかのエラーを返すことができます。

リターン コード 説明
SNMPAPI_NOT_INITIALIZED
SnmpStartup 関数が正常に完了しませんでした。
SNMPAPI_ALLOC_ERROR
メモリ割り当て中にエラーが発生しました。
SNMPAPI_OID_INVALID
xOID パラメーターと yOID パラメーターの一方または両方が無効です。
SNMPAPI_SIZE_INVALID
maxlen パラメーターが無効です。 パラメーター サイズが MAXOBJIDSIZE より大きい。
SNMPAPI_OTHER_ERROR
不明または未定義のエラーが発生しました。

注釈

WinSNMP アプリケーションは 、SnmpOidCompare 関数を呼び出して、2 つのオブジェクト識別子に共通のプレフィックスがあるかどうかを判断できます。

maxlen パラメーターが 0 に等しくなく、MAXOBJIDSIZE より大きくない場合、maxlen の値は比較するサブ識別子の数の上限を設定します。 SnmpOidCompare 関数が比較するサブ識別子の最大数は、既定で最小の数値のいずれか (maxlen パラメーター)、または xOID パラメーターと yOID パラメーターが指す smiOID 構造体の len メンバーのいずれかです。

maxlen パラメーターが 0 に等しい場合、SnmpOidCompare 関数が比較するサブ識別子の最大数は、既定で 2 つの smiOID 構造体の len メンバーの小さい方の数値と比較されます。

結果パラメーターの値は、2 つの smiOID 構造体が辞書式的に等しく、次のいずれかが発生した場合、xOIDyOID と等しいことを示します。

  • SnmpOidCompare は、サブ識別子の maxlen 数を比較します。
  • SnmpOidCompare はサブ識別子の最大数を比較し、両方の smiOID 構造体の len メンバーは等しいが maxlen パラメーターより小さい。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winsnmp.h
Library Wsnmp32.lib
[DLL] Wsnmp32.dll

こちらもご覧ください

WinSNMP 関数

WinSNMP API の概要

smiOID