Compartir a través de


Función SnmpEncodeMsg (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 implementación de Microsoft WinSNMP usa los parámetros pasados en la función SnmpEncodeMsg de WinSNMP para codificar un mensaje SNMP. La implementación devuelve el mensaje SNMP codificado a la aplicación WinSNMP en el búfer especificado por el parámetro msgBufDesc .

Sintaxis

SNMPAPI_STATUS SNMPAPI_CALL SnmpEncodeMsg(
  [in]  HSNMP_SESSION session,
  [in]  HSNMP_ENTITY  srcEntity,
  [in]  HSNMP_ENTITY  dstEntity,
  [in]  HSNMP_CONTEXT context,
  [in]  HSNMP_PDU     pdu,
  [out] smiLPOCTETS   msgBufDesc
);

Parámetros

[in] session

Controle la sesión de WinSNMP.

[in] srcEntity

Controle a la entidad de administración que inicia la solicitud para codificar el mensaje SNMP.

[in] dstEntity

Identificador de la entidad de administración de destino.

[in] context

Controle el contexto (un conjunto de recursos de objetos administrados) que controla la entidad de administración de destino.

[in] pdu

Identificador para la PDU que contiene la solicitud de operación SNMP.

[out] msgBufDesc

Puntero a una estructura smiOCTETS que recibe el mensaje SNMP codificado.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es la longitud, en bytes, del mensaje SNMP codificado. Este número también es el valor del miembro len de la estructura smiOCTETS a la que apunta el parámetro msgBufDesc .

Si se produce un error en la función, el valor devuelto es SNMPAPI_FAILURE. Para obtener más información, vea la siguiente sección Comentarios. Para obtener información de error extendida, llame a SnmpGetLastError. La función SnmpGetLastError puede devolver uno de los siguientes errores.

Código devuelto Descripción
SNMPAPI_NOT_INITIALIZED
La función SnmpStartup no se completó correctamente.
SNMPAPI_ALLOC_ERROR
Error durante la asignación de memoria.
SNMPAPI_SESSION_INVALID
El parámetro session no es válido.
SNMPAPI_ENTITY_INVALID
Uno o ambos parámetros de entidad no son válidos.
SNMPAPI_CONTEXT_INVALID
El parámetro de contexto no es válido.
SNMPAPI_PDU_INVALID
El parámetro pdu no es válido.
SNMPAPI_OTHER_ERROR
Error desconocido o indefinido.

Comentarios

Los cinco primeros parámetros pasados a la función SnmpEncodeMsg son los mismos parámetros que se pasan a la función SnmpSendMsg .

La aplicación WinSNMP debe llamar a la función SnmpFreeDescriptor para liberar recursos asignados para el miembro ptr de la estructura smiOCTETS . Esta es la estructura a la que apunta el parámetro msgBufDesc . Para obtener más información, consulte Conceptos de Administración de datos de WinSNMP.

En la entrada, la función SnmpEncodeMsg omite los miembros de la estructura a los que apunta el parámetro msgBufDesc . La implementación sobrescribe los miembros de la estructura si la función se completa correctamente.

La implementación comprueba el formato de los cinco primeros parámetros de entrada. Si uno de los parámetros no es válido, SnmpEncodeMsg devuelve SNMPAPI_FAILURE y SnmpGetLastError devuelve un código de error extendido.

Requisitos

Requisito Value
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

SnmpDecodeMsg

SnmpFreeDescriptor

SnmpSendMsg

Funciones winSNMP

Introducción a la API de WinSNMP

smiOCTETS