snmpSetPduData 函式 (winsnmp.h)
[SNMP 可用於需求一節中指定的作業系統。 它在後續版本中可能會變更或無法使用。 請改用 Windows 遠端系統管理,這是 WS-Man 的 Microsoft 實作。
WinSNMP SnmpSetPduData 函式會更新指定 SNMP 通訊協定資料單位中選取的資料欄位, (PDU) 。
語法
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetPduData(
[in] HSNMP_PDU PDU,
[in] const smiINT *PDU_type,
[in] const smiINT32 *request_id,
[in] const smiINT *non_repeaters,
[in] const smiINT *max_repetitions,
[in] const HSNMP_VBL *varbindlist
);
參數
[in] PDU
SNMP PDU 的控制碼。
[in] PDU_type
具有值的變數指標,以更新指定 PDU 的 PDU_type 欄位。 此參數也可以是 Null。
[in] request_id
具有值的變數指標,以更新指定 PDU 的request_id 欄位。 此參數也可以是 Null。
[in] non_repeaters
如果 PDU_type 參數等於 SNMP_PDU_GETBULK,此參數會指向具有值的變數,以更新指定 PDU 的 non_repeaters 欄位。 Microsoft WinSNMP 實作會忽略其他 PDU 類型的此參數。 此參數也可以是 Null。
[in] max_repetitions
如果 PDU_type 參數等於 SNMP_PDU_GETBULK,此參數會指向具有值的變數,以更新指定 PDU 的 max_repetitions 欄位。 實作會忽略其他 PDU 類型的此參數。 此參數也可以是 Null。
[in] varbindlist
變數的指標,其值會更新指定 PDU 之變數系結清單欄位的控制碼。 此參數也可以是 Null。
傳回值
如果函式成功,傳回值會SNMPAPI_SUCCESS。
如果函式失敗,傳回值會SNMPAPI_FAILURE。 若要取得擴充的錯誤資訊,請呼叫 SnmpGetLastError。 SnmpGetLastError函式可以傳回下列其中一個錯誤。
傳回碼 | 描述 |
---|---|
|
SnmpStartup函式未順利完成。 |
|
記憶體配置期間發生錯誤。 |
|
PDU 類型無效。 |
|
變數系結清單無效。 |
|
所有輸入參數都是 Null。 未執行 SNMP 作業。 |
|
發生未知或未定義的錯誤。 |
備註
需要 SnmpSetPduData函式的所有參數。 不過, PDU 參數以外的所有參數都可以是 Null。 如果 WinSNMP 應用程式在參數中傳遞 Null , SnmpSetPduData 就不會更新 PDU 中的對應欄位。 因為 SnmpSetPduData 會將參數當做值的指標傳遞,所以應用程式仍然可以使用 Null更新 PDU 欄位。
一個 PDU 欄位的值可以單獨有效,但可能會與其他欄位的值結合而失效。 當應用程式呼叫 SnmpSendMsg 或 SnmpEncodeMsg 函式時,實作會驗證 PDU 和其他訊息元素。 實作會拒絕不正確 PDU。
您可以使用 SnmpSetPduData 函式呼叫來更新的唯一陷阱 PDU 類型是 SNMPv2C 陷阱 PDU。
規格需求
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winsnmp.h |
程式庫 | Wsnmp32.lib |
Dll | Wsnmp32.dll |