SnmpExtensionInit-Funktion (snmp.h)
[SNMP ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt "Anforderungen" angegeben sind. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Verwenden Sie stattdessen die Windows-Remoteverwaltung, die Microsoft-Implementierung von WS-Man.]
Der Microsoft SNMP-Dienst ruft die Funktion SnmpExtensionInit auf, um die SNMP-Erweiterungs-Agent-DLL zu initialisieren. Diese Funktion ist ein Element der SNMP-Erweiterungs-Agent-API.
Syntax
BOOL SNMP_FUNC_TYPE SnmpExtensionInit(
[in] DWORD dwUptimeReference,
[out] HANDLE *phSubagentTrapEvent,
[out] AsnObjectIdentifier *pFirstSupportedRegion
);
Parameter
[in] dwUptimeReference
Gibt einen Zeit-Null-Verweis für den Erweiterungs-Agent an.
[out] phSubagentTrapEvent
Zeiger auf ein Ereignishandle der Erweiterungs-Agent wird an den SNMP-Dienst übergeben. Dieses Handle wird verwendet, um den Dienst zu benachrichtigen, dass der Erweiterungs-Agent über eine oder mehrere Traps verfügt, die gesendet werden sollen. Weitere Informationen zur Zuweisung und Zuordnung des Ereignishandles finden Sie im folgenden Abschnitt Mit anmerkungen.
[out] pFirstSupportedRegion
Zeiger auf eine AsnObjectIdentifier-Struktur , um die erste MIB-Unterstruktur zu empfangen, die vom Erweiterungs-Agent unterstützt wird. Weitere Informationen zum Zuweisen und Verwalten von Ressourcen für diese Struktur finden Sie im folgenden Abschnitt hinweise.
Der Erweiterungs-Agent kann zusätzliche MIB-Unterstrukturen registrieren, indem er die SnmpExtensionInitEx-Einstiegspunktfunktion implementiert.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.
Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE.
Hinweise
Erweiterungs-Agents sollten den dwUptimeReference-Parameter ignorieren. Stattdessen sollten sie die SnmpSvcGetUptime-Funktion aufrufen, um die Anzahl von Centisekunden abzurufen, die der Microsoft SNMP-Dienst ausgeführt hat. Da der dwUptimeReference-Parameter die verstrichene Zeit als DWORD-Wert in Millisekunden speichert, kann die Zeit auf 0 umschließen und ein ungenaues Zeitintervall widerspiegeln.
Der Erweiterungs-Agent benachrichtigt den SNMP-Dienst darüber, dass er eine oder mehrere Traps senden muss, indem er das im parameter phSubagentTrapEvent übergebene Ereignishandle auf den signalierten Zustand festlegt. Nachdem dieses Ereignis signalisiert wurde, ruft der SNMP-Dienst wiederholt den SnmpExtensionTrap-Einstiegspunkt des Erweiterungs-Agents auf, bis die Funktion den Wert FALSE zurückgibt. Dies gibt an, dass der Erweiterungs-Agent keine traps mehr zu senden hat. Wenn der Erweiterungs-Agent keine Traps generiert, sollte der phSubagentTrapEvent-Parameter den Wert NULL zurückgeben.
Der SNMP-Erweiterungs-Agent muss Ressourcen für das Trap-Ereignishandle zuordnen und verwalten. Wenn der SNMP-Dienst die Funktion SnmpExtensionInit aufruft, muss der Erweiterungs-Agent die CreateEvent-Funktion aufrufen, um das Ereignishandle zuzuordnen. Der Erweiterungs-Agent übergibt das Handle an den SNMP-Dienst im parameter phSubagentTrapEvent . Wenn der SNMP-Dienst die Funktion SnmpExtensionClose aufruft, muss der Erweiterungs-Agent Ressourcen für das Trap-Ereignishandle verwalten.
Der SNMP-Dienst erstellt eine Kopie der AsnObjectIdentifier-Struktur , die der Erweiterungs-Agent im pFirstSupportedRegion-Parameter zurückgibt. Der Erweiterungs-Agent muss die Ressourcen zuordnen und behandeln, die der ursprünglichen Struktur zugeordnet sind. Dies kann ausgeführt werden, wenn der SNMP-Dienst die SnmpExtensionClose-Funktion aufruft.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | snmp.h |