次の方法で共有


SnmpStrToContext 関数 (winsnmp.h)

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

WinSNMP SnmpStrToContext 関数は、Microsoft WinSNMP 実装に固有の SNMP コンテキスト情報へのハンドルを返します。 ハンドルは、WinSNMP アプリケーションが SnmpSendMsg および SnmpRegister 関数の呼び出しでコンテキスト パラメーターとして使用できる有効な値です。

構文

HSNMP_CONTEXT SNMPAPI_CALL SnmpStrToContext(
  [in] HSNMP_SESSION session,
  [in] smiLPCOCTETS  string
);

パラメーター

[in] session

WinSNMP セッションを処理します。

[in] string

解釈する文字列を含む smiOCTETS 構造体へのポインター。 この文字列は、マネージド オブジェクトのコレクションを識別することも、コミュニティ文字列にすることもできます。

エンティティ変換モードとコンテキスト変換モードの現在の設定によって、次の表に示すように 、SnmpStrToContext が入力文字列構造を解釈する方法が決まります。

エンティティ/コンテキスト変換モード 説明
SNMPAPI_TRANSLATED
実装では、 string パラメーターがマネージド オブジェクトのコレクションのわかりやすい名前として解釈されます。 実装では、実装のデータベースを使用して、名前を SNMPv1 または SNMPv2C コンポーネントに変換します。
SNMPAPI_UNTRANSLATED_V1
実装では、 string パラメーターがリテラル SNMP コミュニティ文字列として解釈されます。
SNMPAPI_UNTRANSLATED_V2
実装では、 string パラメーターがリテラル SNMP コミュニティ文字列として解釈されます。

戻り値

関数が成功した場合、戻り値は目的のコンテキストへのハンドルです。

関数が失敗した場合、戻り値はSNMPAPI_FAILURE。 拡張エラー情報を取得するには、 SnmpGetLastError を呼び出します。 SnmpGetLastError 関数は、次のいずれかのエラーを返すことができます。

リターン コード 説明
SNMPAPI_NOT_INITIALIZED
SnmpStartup 関数が正常に完了しませんでした。
SNMPAPI_ALLOC_ERROR
メモリ割り当て中にエラーが発生しました。
SNMPAPI_SESSION_INVALID
セッション パラメーターが無効です。
SNMPAPI_CONTEXT_INVALID
文字列パラメーターの形式が無効です。 たとえば、文字列パラメーターが指す smiOCTETS 構造体の len メンバーまたは ptr メンバーは NULL です
SNMPAPI_CONTEXT_UNKNOWN
文字列パラメーターで参照される値が存在しません。
SNMPAPI_OTHER_ERROR
不明または未定義のエラーが発生しました。

解説

エンティティ変換モードとコンテキスト変換モードの現在の設定によって、 SnmpStrToContext が入力文字列構造を解釈する方法が決まります。 詳細については、「 エンティティとコンテキスト変換モードの設定」を参照してください。

WinSNMP アプリケーションは 、SnmpStrToContext 関数によって割り当てられたコンテキスト ハンドルを解放するために 、SnmpFreeContext 関数を呼び出す必要があります。 リソースの解放の詳細については、「WinSNMP データ管理の概念」を参照してください。

WinSNMP アプリケーションは、文字列パラメーターによって指される smiOCTETS 構造体の ptr メンバーに関連付けられているメモリを解放する必要があります。 これは、アプリケーションによってリソースが定義および割り当てられるためです。 たとえば、アプリケーションが GlobalAlloc 関数の呼び出しでリソースを割り当てた場合、 GlobalFree 関数を使用してリソースの割り当てを解除する必要があります。 詳細については、「 WinSNMP 記述子の解放」を参照してください。

要件

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

関連項目

SnmpFreeContext

SnmpFreeDescriptor

SnmpRegister

SnmpSendMsg

WinSNMP 関数

WinSNMP API の概要

smiOCTETS