共用方式為


snmpOidCompare 函式 (winsnmp.h)

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

WinSNMP SnmpOidCompare 函式語匯比較兩個 SNMP 物件識別碼,上限為 maxlen 參數所指定的長度。

語法

SNMPAPI_STATUS SNMPAPI_CALL SnmpOidCompare(
  [in]  smiLPCOID xOID,
  [in]  smiLPCOID yOID,
  [in]  smiUINT32 maxlen,
  [out] smiLPINT  result
);

參數

[in] xOID

要比較之第一個 smiOID 物件識別碼的指標。 對象標識碼的長度可以是零。

[in] yOID

要比較的第二 個 smiOID 對象識別碼指標。 對象標識碼的長度可以是零。

[in] maxlen

如果不等於零,請指定要比較的減號數目。 此參數必須小於 MAXOBJIDSIZE:128 個子標識碼中的元件數目上限。 如需詳細資訊,請參閱下列一節。

[out] result

要接收比較結果的整數變數指標。 變數可以接收下列其中一個結果。

結果 意義
大於 0
xOID 大於 yOID
等於 0
xOID 等於 yOID
小於 0
xOID 小於 yOID
 

如需其他比較條件,請參閱下列一節。

傳回值

如果函式成功,傳回值會SNMPAPI_SUCCESS。

如果函式失敗,傳回值會SNMPAPI_FAILURE。 若要取得延伸的錯誤資訊,請呼叫 SnmpGetLastError,在其會話參數中指定 NULL 值。 SnmpGetLastError 函式可以傳回下列其中一個錯誤。

傳回碼 Description
SNMPAPI_NOT_INITIALIZED
SnmpStartup 函式未順利完成。
SNMPAPI_ALLOC_ERROR
記憶體配置期間發生錯誤。
SNMPAPI_OID_INVALID
其中一個或兩個 xOIDyOID 參數都無效。
SNMPAPI_SIZE_INVALID
maxlen 參數無效。 參數大小大於 MAXOBJIDSIZE。
SNMPAPI_OTHER_ERROR
發生未知或未定義的錯誤。

備註

WinSNMP 應用程式可以呼叫 SnmpOidCompare 函式,以判斷兩個對象識別碼是否有常見的前置詞。

如果 maxlen 參數不等於零,且不大於 MAXOBJIDSIZE,maxlen 的值會設定要比較的減號數目上限。 SnmpOidCompare 函式所比較的最大子標識符數目會預設為最小的數位:maxlen 參數,或 xOIDyOID 參數所指向其中一個 smiOID 結構的 len 成員。

如果 maxlen 參數等於零,SnmpOidCompare 函式所比較的子標識碼數目上限會預設為兩個 smiOID 結構中較小的 len 成員數目。

如果兩個 smiOID 結構在語彙上相等,則結果參數的值會指出 xOID 等於 yOID,而且會發生下列其中一項:

  • SnmpOidCompare 會比較 subidentifiers 的 maxlen 數目。
  • SnmpOidCompare 會比較減號的最大數目,而兩個 smiOID 結構的 len 成員相等,但小於 maxlen 參數。

規格需求

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

另請參閱

WinSNMP 函式

WinSNMP API 概觀

smiOID