SnmpOidToStr 関数 (winsnmp.h)
[SNMP は、[要件] セクションで指定されたオペレーティング システムで使用できます。 今後のバージョンでは変更されるか、利用できなくなる場合もあります。 代わりに、WS-Man の Microsoft 実装である Windows リモート管理を使用します。
WinSNMP SnmpOidToStr 関数は、SNMP オブジェクト識別子の内部バイナリ表現を点線の数値文字列形式に変換します (例: "1.2.3.4.5.6")。
構文
SNMPAPI_STATUS SNMPAPI_CALL SnmpOidToStr(
[in] smiLPCOID srcOID,
[in] smiUINT32 size,
[out] LPSTR string
);
パラメーター
[in] srcOID
変換するオブジェクト識別子を持つ smiOID 構造体へのポインター。
[in] size
文字列パラメーターで示されるバッファーのサイズをバイト単位で指定します。 詳細については、「解説」を参照してください。
[out] string
SNMP 管理エンティティを指定する変換された文字列オブジェクト識別子を受け取るバッファーへのポインター。
戻り値
関数が成功した場合、戻り値は WinSNMP アプリケーションが文字列パラメーターに書き込む 文字列 の長さ (バイト単位) です。 戻り値には 、null で終わるバイトが含まれます。 この値は size パラメーターの値以下である場合がありますが、大きくすることはできません。
関数が失敗した場合、戻り値はSNMPAPI_FAILURE。 拡張エラー情報を取得するには、セッション パラメーターに NULL 値を指定して SnmpGetLastError を呼び出します。 SnmpGetLastError 関数は、次のいずれかのエラーを返すことができます。
リターン コード | 説明 |
---|---|
|
SnmpStartup 関数が正常に完了しませんでした。 |
|
メモリ割り当て中にエラーが発生しました。 |
|
size パラメーターが無効です。 このパラメーターは 0 に等しくすることはできません。 文字列 パラメーターによって指されるバッファーのサイズを示す必要があります。 |
|
srcOID パラメーターが無効です。 詳細については、次の「解説」セクションを参照してください。 |
|
出力バッファーの長さが不十分です。 |
|
不明または未定義のエラーが発生しました。 |
解説
WinSNMP アプリケーションでは、 size パラメーターを使用して、MAXOBJIDSTRSIZE 長さ (1408 バイト) の文字列バッファーを指定することをお勧めします。 これにより、変換された文字列を保持するのに十分な大きさの出力バッファーが確保されます。 変換された文字列は通常 MAXOBJIDSTRSIZE より小さいため、WinSNMP アプリケーションは変換された文字列を小さなバッファーにコピーできます。 その後、アプリケーションは、初期バッファーに割り当てたメモリを再利用または解放できます。 詳細については、「WinSNMP データ管理の概念」を参照してください。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winsnmp.h |
Library | Wsnmp32.lib |
[DLL] | Wsnmp32.dll |