SnmpStartupEx 関数 (winsnmp.h)
[SNMP は、[要件] セクションで指定されたオペレーティング システムで使用できます。 今後のバージョンでは変更されるか、利用できなくなる場合もあります。 代わりに、WS-Man の Microsoft 実装である Windows リモート管理を使用します。
SnmpStartupEx 関数は、WinSNMP アプリケーションに実装のサービスが必要であることを Microsoft WinSNMP 実装に通知します。 WinSNMP SnmpStartupEx 関数を使用すると、実装を初期化し、Windows SNMP アプリケーション プログラミング インターフェイス (WinSNMP API) のバージョン、実装でサポートされる SNMP 通信のレベル、実装の既定の変換モードと再送信モードをアプリケーションに戻します。
Windows Server 2003 Service Pack 1 (SP1) 以降がインストールされている場合は、 SnmpStartup の代わりにこの関数を使用する必要があります。 SnmpStartupEx を使用すると、同じアプリケーション内で WinSNMP を使用する複数の独立したソフトウェア モジュールをサポートできます。
構文
SNMPAPI_STATUS SNMPAPI_CALL SnmpStartupEx(
[out] smiLPUINT32 nMajorVersion,
[out] smiLPUINT32 nMinorVersion,
[out] smiLPUINT32 nLevel,
[out] smiLPUINT32 nTranslateMode,
[out] smiLPUINT32 nRetransmitMode
);
パラメーター
[out] nMajorVersion
実装でサポートされている WinSNMP API のメジャー バージョン番号を受け取る符号なし長整数変数へのポインター。 たとえば、実装で WinSNMP バージョン 2.0 がサポートされていることを示すために、関数は値 2 を返します。
[out] nMinorVersion
実装でサポートされている WinSNMP API のマイナー バージョン番号を受け取る符号なし long 整数変数へのポインター。 たとえば、実装で WinSNMP バージョン 2.0 がサポートされていることを示すために、関数は値 0 を返します。
[out] nLevel
実装でサポートされている最高レベルの SNMP 通信を受け取る符号なし長整数変数へのポインター。 正常に戻ると、このパラメーターの値は 2 になります。 レベル 2 のサポートの説明については、「 SNMP サポートのレベル」を参照してください。
[out] nTranslateMode
実装で有効な既定の変換モードを受け取るための符号なし長整数変数へのポインター。 変換モードは、WinSNMP アプリケーションが SnmpStrToEntity 関数に渡すエンティティ パラメーターの解釈方法に適用されます。 変換モードは、WinSNMP アプリケーションが SnmpStrToContext 関数に渡す文字列パラメーターにも適用されます。 このパラメーターには、次の値のいずれかを指定できます。
詳細については、「 エンティティとコンテキスト変換モードの設定」を参照してください。
[out] nRetransmitMode
実装で有効な既定の再送信モードを受け取るための符号なし長整数変数へのポインター。 このパラメーターには、次の値のいずれかを指定できます。
値 | 説明 |
---|---|
|
実装では、WinSNMP アプリケーションの再送信ポリシーが実行されていません。 |
|
実装では、WinSNMP アプリケーションの再送信ポリシーが実行されています。 |
詳細については、「 再送信について」を参照してください。
戻り値
関数が成功した場合、戻り値はSNMPAPI_SUCCESSされ、前のパラメーターの説明に示すように、パラメーターには適切な値が含まれます。
関数が失敗した場合、戻り値はSNMPAPI_FAILURE。 拡張エラー情報を取得するには、セッション パラメーターに NULL 値を指定して SnmpGetLastError を呼び出します。 SnmpGetLastError 関数は、次のいずれかのエラーを返すことができます。 詳細については、このドキュメントの後半の「解説」セクションを参照してください。
リターン コード | 説明 |
---|---|
|
起動時にリソース割り当てエラーが発生しました。 |
|
SnmpStartupEx 関数が正しく初期化されませんでした。 |
|
メモリ割り当て中にエラーが発生しました。 |
|
不明または未定義のエラーが発生しました。 |
解説
WinSNMP アプリケーションは、他の WinSNMP 関数を呼び出す前に、 SnmpStartupEx 関数を少なくとも 1 回正常に呼び出す必要があります。 WinSNMP アプリケーションが SnmpStartupEx を正常に呼び出す前に別の WinSNMP 関数を呼び出した場合、実装はエラー SNMPAPI_NOT_INITIALIZEDを返します。
WinSNMP アプリケーションは、エラー情報のために SnmpGetLastError を呼び出すか、 SnmpStartupEx 関数の呼び出しが失敗した場合に SnmpStartupEx を 再試行できます。 SnmpStartupEx がSNMPAPI_FAILUREを返し、その後の SnmpGetLastError の呼び出しでSNMP_ALLOC_ERRORが返されると、WinSNMP アプリケーションは待機を選択できます。 実装に十分な空きリソースがある場合は 、SnmpStartupEx の呼び出しを再試行できます。
WinSNMP アプリケーションは、 SnmpStartupEx の呼び出しが成功するたびに SnmpCleanupEx を呼び出す必要があります。 WinSNMP 実装は、 SnmpStartup または SnmpStartupEx への未処理の正常な呼び出しがない最終クリーンアップを実行します。
詳細については、「 SNMP サポートのレベル 」および 「SNMP バージョンについて」を参照してください。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winsnmp.h |
Library | Wsnmp32.lib |
[DLL] | Wsnmp32.dll |