共用方式為


多個陷阱註冊

當 WinSNMP 應用程式為陷阱或通知註冊 WinSNMP 會話時,有數個選項可供使用。 因此,應用程式可以多次呼叫 SnmpRegister 函式,實際上會定義用於接收陷阱和通知的自訂篩選。 例如,您可以註冊一種類型的陷阱或通知,或針對所有陷阱和通知,視 通知 參數的值而定。 此外,應用程式可以在 SnmpRegister 函式的其他參數中指定值,進一步定義應該觸達應用程式的陷阱和通知。 如需詳細資訊,請參閱 管理陷阱和通知

以下是多個 SnmpRegister 呼叫重複的實例。 在這些實例中,如果函式順利完成, SnmpRegister 會傳回SNMPAPI_SUCCESS,但備援註冊無效。

  1. SnmpRegister 函式的呼叫,要求在先前呼叫 SnmpRegister 要求傳遞所有陷阱和通知之後,要求傳遞所有陷阱和通知, (未篩選的傳遞) 。 此呼叫是多餘的,因為會話已經收到所有陷阱和通知,包括篩選準則所定義的單一類型。
  2. 對 SnmpRegister的重複呼叫,或其中一個參數清單與會話先前對SnmpRegister呼叫中的參數清單相同。
  3. 對 SnmpRegister函式的呼叫,要求根據物件識別碼 (OID) 篩選傳遞陷阱和通知,其前置詞是在先前對 SnmpRegister的呼叫中指定的 OID。 例如,您可以在 通知 參數中指定 「1.3.6.1.4.1.311」,以接收來自任何 Microsoft SNMP 代理程式實體的通知。 如果您再次呼叫 SnmpRegister 並指定 「1.3.6.1.4.1.311.1」,則第二次呼叫是多餘的,因為會話已經收到包含 OID 前置詞 「1.3.6.1.4.1.311」 的所有陷阱和通知。

若要取消註冊會話,您必須符合 SnmpRegister 函式的每個唯一註冊呼叫。 呼叫 SnmpRegister 以取消註冊會話,並確定 SnmpRegister 的前五個參數與初始註冊呼叫中的參數相同。 初始呼叫與取消註冊呼叫的唯一差異在於註冊時,您必須在 status 參數中指定值SNMPAPI_ON,而且當您呼叫函式以取消註冊時,您必須指定SNMPAPI_OFF。 您不需要比對 SnmpRegister 函式的備援註冊呼叫。 您只需要符合第一個唯一的註冊呼叫。

若要變更篩選準則,應用程式可能需要先取消註冊並停用特定陷阱或通知的傳遞。 然後,應用程式可以藉由呼叫 SnmpRegister來建立新的篩選,並傳遞適當的值。