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_FAILURE。 拡張エラー情報を取得するには、 SnmpGetLastError を呼び出します。 SnmpGetLastError 関数は、次のいずれかのエラーを返すことができます。
リターン コード | 説明 |
---|---|
|
SnmpStartup 関数が正常に完了しませんでした。 |
|
メモリ割り当て中にエラーが発生しました。 |
|
セッション パラメーターが無効です。 |
|
文字列パラメーターの形式が無効です。 たとえば、文字列パラメーターが指す smiOCTETS 構造体の len メンバーまたは ptr メンバーは NULL です。 |
|
文字列パラメーターで参照される値が存在しません。 |
|
不明または未定義のエラーが発生しました。 |
解説
エンティティ変換モードとコンテキスト変換モードの現在の設定によって、 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 |