SnmpCleanupEx-Funktion (winsnmp.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.]
Die SnmpCleanupEx-Funktion führt eine Bereinigung durch, wenn keine ausstehenden erfolgreichen Aufrufe von SnmpStartup oder SnmpStartupEx in einer Windows SNMP-Anwendung (WinSNMP) ausstehen. Andernfalls wird eine interne Verweisanzahl, die die aktuelle Anzahl der ausstehenden erfolgreichen Aufrufe von SnmpStartupEx angibt, verringert.
Diese Funktion sollte anstelle von SnmpCleanup verwendet werden, wenn Windows Server 2003 mit Service Pack 1 (SP1) oder höher installiert ist. SnmpCleanupEx ermöglicht die Unterstützung mehrerer unabhängiger Softwaremodule, die WinSNMP in derselben Anwendung verwenden.
Syntax
SNMPAPI_STATUS SNMPAPI_CALL SnmpCleanupEx();
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert SNMPAPI_SUCCESS. Bis die WinSNMP-Anwendung die entsprechende SnmpStartupEx-Funktion erfolgreich zurückruft und es keine weiteren ausstehenden erfolgreichen Aufrufe von SnmpStartup oder SnmpStartupEx gibt, gibt jeder andere Aufruf einer WinSNMP-Funktion innerhalb derselben Anwendung SNMPAPI_FAILURE mit dem erweiterten Fehlercode SNMPAPI_NOT_INITIALIZED zurück.
Wenn die Funktion fehlschlägt, wird der Rückgabewert SNMPAPI_FAILURE, aber die WinSNMP-Anwendung muss den Aufruf von SnmpCleanupEx nicht wiederholen. Um erweiterte Fehlerinformationen abzurufen, rufen Sie SnmpGetLastError auf, indem Sie einen NULL-Wert im Sitzungsparameter angeben. Die SnmpGetLastError-Funktion kann einen der folgenden Fehler zurückgeben.
Rückgabecode | Beschreibung |
---|---|
|
Während der Speicherzuordnung ist ein Fehler aufgetreten. |
|
Die SnmpStartupEx-Funktion wurde nicht erfolgreich abgeschlossen, oder es ist ein unbekannter oder nicht definierter Fehler aufgetreten. |
Hinweise
Bevor die WinSNMP-Anwendung SnmpCleanupEx aufruft, sollte sie die SnmpClose-Funktion einmal für jede Sitzung aufrufen, die die Implementierung aufgrund eines Aufrufs der SnmpCreateSession-Funktion öffnet.
Wenn eine WinSNMP-Anwendung die SnmpCleanupEx-Funktion aufruft, werden von der Implementierung alle Ressourcen zugeordnet, die der Anwendung zugeordnet sind, wenn auch keine ausstehenden erfolgreichen Aufrufe von SnmpStartup oder SnmpStartupEx vorhanden sind. Es wird jedoch empfohlen, dass eine WinSNMP-Anwendung die spezifischen Ressourcen freigibt, die die Implementierung ihr mit der WinSNMP-Funktion zuweist, die der Ressource entspricht. Weitere Informationen zum Freigeben einzelner Ressourcen finden Sie unter SnmpFreeEntity, SnmpFreeVbl, SnmpFreeDescriptor, SnmpFreeContext und SnmpFreePdu.
Wenn eine WinSNMP-Anwendung einen Notausgang ausführen muss und snmpCleanupEx ohne Freigabe einzelner Ressourcen und ohne Aufruf von SnmpClose für jede geöffnete Sitzung aufruft, werden von der Implementierung alle Ressourcen zugeordnet, die der WinSNMP-Anwendung zugeordnet sind. Um diese Funktionalität in der Implementierung zu aktivieren, muss die Anwendung jedoch weiterhin SnmpCleanupEx aufrufen.
SnmpCleanupEx darf nicht aufgerufen werden, wenn die Anwendungs-DLL gerade entladen wird.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winsnmp.h |
Bibliothek | Wsnmp32.lib |
DLL | Wsnmp32.dll |