Compartir a través de


Función SnmpCleanupEx (winsnmp.h)

[SNMP está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. En versiones posteriores podría modificarse o no estar disponible. En su lugar, use la administración remota de Windows, que es la implementación de Microsoft de WS-Man.]

La función SnmpCleanupEx realiza la limpieza cuando no hay llamadas correctas pendientes a SnmpStartup o SnmpStartupEx dentro de una aplicación SNMP (WinSNMP) de Windows. De lo contrario, se disminuye un recuento de referencias interno que indica el número actual de llamadas correctas pendientes a SnmpStartupEx .

Esta función debe usarse en lugar de SnmpCleanup si Se instala Windows Server 2003 con Service Pack 1 (SP1) o posterior. SnmpCleanupEx permite la compatibilidad con varios módulos de software independientes que usan WinSNMP dentro de la misma aplicación.

Nota Una aplicación WinSNMP debe llamar a la función SnmpCleanupEx para cada llamada correcta a SnmpStartupEx antes de que finalice la aplicación.
 

Sintaxis

SNMPAPI_STATUS SNMPAPI_CALL SnmpCleanupEx();

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es SNMPAPI_SUCCESS. Hasta que la aplicación WinSNMP recupere correctamente la función SnmpStartupEx correspondiente y no haya llamadas correctas pendientes adicionales a SnmpStartup o SnmpStartupEx, cualquier otra llamada a una función WinSNMP dentro de la misma aplicación devuelve SNMPAPI_FAILURE, con un código de error extendido de SNMPAPI_NOT_INITIALIZED.

Si se produce un error en la función, el valor devuelto es SNMPAPI_FAILURE, pero la aplicación WinSNMP no necesita volver a intentar la llamada a SnmpCleanupEx. Para obtener información de error extendida, llame a SnmpGetLastError especificando un valor NULL en su parámetro de sesión . La función SnmpGetLastError puede devolver uno de los siguientes errores.

Código devuelto Descripción
SNMPAPI_ALLOC_ERROR
Error durante la asignación de memoria.
SNMPAPI_OTHER_ERROR
La función SnmpStartupEx no se completó correctamente o se produjo un error desconocido o indefinido.

Comentarios

Antes de que la aplicación WinSNMP llame a SnmpCleanupEx, debe llamar a la función SnmpClose una vez para cada sesión que se abra la implementación como resultado de una llamada a la función SnmpCreateSession .

Cuando una aplicación WinSNMP llama a la función SnmpCleanupEx , la implementación desasigna todos los recursos asignados a la aplicación si tampoco hay llamadas correctas pendientes a SnmpStartup o SnmpStartupEx. Sin embargo, se recomienda que una aplicación WinSNMP libere los recursos específicos que la implementación asigna para ella con la función WinSNMP que corresponde al recurso. Para obtener más información sobre cómo liberar recursos individuales, vea SnmpFreeEntity, SnmpFreeVbl, SnmpFreeDescriptor, SnmpFreeContext y SnmpFreePdu.

Si una aplicación WinSNMP debe realizar una salida de emergencia y llama a SnmpCleanupEx sin liberar recursos individuales y sin llamar a SnmpClose para cada sesión abierta, la implementación desasigna todos los recursos asignados a la aplicación WinSNMP. Sin embargo, para habilitar esta funcionalidad en la implementación, la aplicación debe seguir llamando a SnmpCleanupEx.

No se debe llamar a SnmpCleanupEx cuando el archivo DLL de la aplicación está en proceso de descarga.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winsnmp.h
Library Wsnmp32.lib
Archivo DLL Wsnmp32.dll

Consulte también

SnmpClose

SnmpCreateSession

SnmpFreeContext

SnmpFreeDescriptor

SnmpFreeEntity

SnmpFreePdu

SnmpFreeVbl

SnmpStartupEx

Funciones winSNMP

Introducción a la API de WinSNMP