共用方式為


snmpMgrRequest 函式 (mgmtapi.h)

[SNMP 可用於需求一節中指定的作業系統。 它在後續版本中可能會變更或無法使用。 請改用 Windows 遠端管理,這是 WS-Man 的 Microsoft 實作。

SnmpMgrRequest 函式會要求使用指定的代理程序執行指定的作業。 此函式是SNMP管理 API 的元素。

語法

SNMPAPI SNMP_FUNC_TYPE SnmpMgrRequest(
  [in]      LPSNMP_MGR_SESSION session,
  [in]      BYTE               requestType,
  [in, out] RFC1157VarBindList *variableBindings,
  [out]     AsnInteger         *errorStatus,
  [out]     AsnInteger         *errorIndex
);

參數

[in] session

內部結構的指標,指定將執行要求的會話。

應用程式不應該在不同的線程中指定此函式傳回 的LPSNMP_MGR_SESSION 指標。 您可以指定 SnmpMgrOpen 傳回的指標,但只有在呼叫 SnmpMgrOpenSnmpMgrRequest 時,才會源自相同線程的內容。

[in] requestType

指定SNMP要求類型。 此參數可以是SNMPv1所定義的下列其中一個值。

意義
SNMP_PDU_GET
擷取指定變數的值或值。
SNMP_PDU_GETNEXT
擷取指定變數之語匯後續任務的值。
SNMP_PDU_SET
在特定變數內寫入值。
 

請注意,PDU 要求類型已重新命名。 如需詳細資訊,請參閱 SNMP變數類型和要求 PDU 類型

[in, out] variableBindings

變數系結清單的指標。

注意SnmpVarBind 結構所指向的 SnmpVarBind 陣列必須使用 SnmpUtilMemAlloc 函式來配置。
 

[out] errorStatus

變數的指標,其中會傳回錯誤狀態結果。 此參數可以是SNMPv1所定義的下列其中一個值。

意義
SNMP_ERRORSTATUS_NOERROR
代理程式會報告傳輸期間未發生任何錯誤。
SNMP_ERRORSTATUS_TOOBIG
代理程式無法將要求作業的結果放入單一 SNMP 訊息中。
SNMP_ERRORSTATUS_NOSUCHNAME
要求的作業識別出未知的變數。
SNMP_ERRORSTATUS_BADVALUE
要求的作業嘗試變更變數,但指定了語法或值錯誤。
SNMP_ERRORSTATUS_READONLY
要求的作業嘗試根據變數的社群配置檔變更不允許變更的變數。
SNMP_ERRORSTATUS_GENERR
要求作業期間發生此處所列的錯誤之一以外的錯誤。

[out] errorIndex

將傳回錯誤索引結果之變數的指標。

傳回值

如果函式成功,則傳回非零的值。

如果函式失敗,則傳回值為 NULL。 若要取得擴充錯誤資訊,請呼叫 GetLastError,這可能會傳回下列其中一個錯誤碼。

傳回碼 Description
SNMP_MGMTAPI_TIMEOUT
要求逾時。
SNMP_MGMTAPI_SELECT_FDERRORS
Windows Sockets 選取 函式所指出的錯誤檔案描述元未預期。

備註

重試和逾時會提供給 SnmpMgrOpen 函式。 變數系結清單中的每個變數都必須初始化,才能輸入 get 和 Get Next 要求的ASN_NULL。

規格需求

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

另請參閱

SNMP 函式

Simple Network Management Protocol (SNMP) 概觀

SnmpMgrClose

SnmpMgrOpen