共用方式為


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。 若要取得擴充的錯誤資訊,請呼叫 SnmpGetLastErrorSnmpGetLastError函式可以傳回下列其中一個錯誤。

傳回碼 描述
SNMPAPI_NOT_INITIALIZED
SnmpStartup函式未順利完成。
SNMPAPI_ALLOC_ERROR
記憶體配置期間發生錯誤。
SNMPAPI_PDU_INVALID
PDU 類型無效。
SNMPAPI_VBL_INVALID
變數系結清單無效。
SNMPAPI_NOOP
所有輸入參數都是 Null。 未執行 SNMP 作業。
SNMPAPI_OTHER_ERROR
發生未知或未定義的錯誤。

備註

需要 SnmpSetPduData函式的所有參數。 不過, PDU 參數以外的所有參數都可以是 Null。 如果 WinSNMP 應用程式在參數中傳遞 NullSnmpSetPduData 就不會更新 PDU 中的對應欄位。 因為 SnmpSetPduData 會將參數當做值的指標傳遞,所以應用程式仍然可以使用 Null更新 PDU 欄位。

一個 PDU 欄位的值可以單獨有效,但可能會與其他欄位的值結合而失效。 當應用程式呼叫 SnmpSendMsgSnmpEncodeMsg 函式時,實作會驗證 PDU 和其他訊息元素。 實作會拒絕不正確 PDU。

您可以使用 SnmpSetPduData 函式呼叫來更新的唯一陷阱 PDU 類型是 SNMPv2C 陷阱 PDU。

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 winsnmp.h
程式庫 Wsnmp32.lib
Dll Wsnmp32.dll

另請參閱

SnmpEncodeMsg

SnmpSendMsg

WinSNMP 函式

WinSNMP API 概觀