snmpCleanup 函数 (winsnmp.h)

[SNMP 可用于“要求”部分中指定的操作系统。 它可能在后续版本中变更或不可用。 请改用 Windows 远程管理,这是 WS-Man 的 Microsoft 实现。]

SnmpCleanup 函数通知 Microsoft WinSNMP 实现调用 WinSNMP 应用程序不再需要实现的服务。

注意 WinSNMP 应用程序必须在终止之前将 SnmpCleanup 函数作为最后一个 WinSNMP 函数调用。
 

语法

SNMPAPI_STATUS SNMPAPI_CALL SnmpCleanup();

返回值

如果函数成功,则返回值SNMPAPI_SUCCESS。 在 WinSNMP 应用程序成功召回 SnmpStartup 函数之前,对 WinSNMP 函数的任何其他调用将返回SNMPAPI_FAILURE,并且扩展错误代码为 SNMPAPI_NOT_INITIALIZED。

如果函数失败,则返回值SNMPAPI_FAILURE,但 WinSNMP 应用程序不需要重试对 SnmpCleanup 的调用。 若要获取扩展的错误信息,请调用 SnmpGetLastError,并在其会话参数中指定 NULL 值。 SnmpGetLastError 函数可能会返回以下错误之一。

返回代码 说明
SNMPAPI_NOT_INITIALIZED
SnmpStartup 函数未成功完成。
SNMPAPI_ALLOC_ERROR
内存分配期间出错。
SNMPAPI_OTHER_ERROR
发生未知或未定义的错误。

注解

在 WinSNMP 应用程序调用 SnmpCleanup 之前,它应针对由于调用 SnmpCreateSession 函数而打开的每个会话调用 SnmpClose 函数

当 WinSNMP 应用程序调用 SnmpCleanup 函数时,实现会解除分配分配给应用程序的所有资源。 但是,建议 WinSNMP 应用程序使用与资源对应的 WinSNMP 函数释放实现为其分配的特定资源。 有关释放单个资源的其他信息,请参阅 SnmpFreeEntitySnmpFreeVblSnmpFreeDescriptorSnmpFreeContextSnmpFreePdu

如果 WinSNMP 应用程序必须执行紧急退出,并且它调用 SnmpCleanup 而不释放单个资源,也没有为每个打开的会话调用 SnmpClose ,则实现将解除分配给 WinSNMP 应用程序的所有资源。 但是,若要在实现中启用此功能,应用程序仍必须调用 SnmpCleanup

当应用程序 DLL 处于卸载过程中时,不得调用 SnmpCleanup

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winsnmp.h
Library Wsnmp32.lib
DLL Wsnmp32.dll

另请参阅

SnmpClose

SnmpCreateSession

SnmpFreeContext

SnmpFreeDescriptor

SnmpFreeEntity

SnmpFreePdu

SnmpFreeVbl

SnmpStartup

WinSNMP 函数

WinSNMP API 概述