Función SnmpDecodeMsg (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 SnmpDecodeMsg de WinSNMP descodifica un mensaje SNMP codificado en sus componentes. Esta función realiza la acción opuesta de la función SnmpEncodeMsg de WinSNMP.
Sintaxis
SNMPAPI_STATUS SNMPAPI_CALL SnmpDecodeMsg(
[in] HSNMP_SESSION session,
[out] LPHSNMP_ENTITY srcEntity,
[out] LPHSNMP_ENTITY dstEntity,
[out] LPHSNMP_CONTEXT context,
[out] LPHSNMP_PDU pdu,
[in] smiLPCOCTETS msgBufDesc
);
Parámetros
[in] session
Controle la sesión de WinSNMP. Este parámetro es obligatorio. Para obtener más información, vea la siguiente sección Comentarios.
[out] srcEntity
Puntero a una variable que recibe un identificador para la entidad de administración de origen. Para obtener más información, vea la sección Comentarios que se muestra más adelante.
[out] dstEntity
Puntero a una variable que recibe un identificador para la entidad de administración de destino. Para obtener más información, vea la sección Comentarios que se muestra más adelante.
[out] context
Puntero a una variable que recibe un identificador para el contexto (un conjunto de recursos de objetos administrados) que controla la entidad de administración de destino.
[out] pdu
Puntero a una variable que recibe un identificador para la unidad de datos del protocolo SNMP (PDU).
[in] msgBufDesc
Puntero a una estructura smiOCTETS que contiene el mensaje SNMP que se va a descodificar en sus componentes. El miembro len de la estructura especifica el número máximo de bytes que se van a procesar; el miembro ptr apunta al mensaje SNMP codificado.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es el número de bytes descodificados. Este valor puede ser igual o menor que el 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 información de error extendida, llame a SnmpGetLastError. La función SnmpGetLastError puede devolver uno de los siguientes errores.
Código devuelto | Descripción |
---|---|
|
La función SnmpStartup no se completó correctamente. |
|
Error durante la asignación de memoria. |
|
El parámetro session no es válido. |
|
Uno o ambos parámetros de entidad no son válidos. |
|
El parámetro de contexto no es válido. |
|
El parámetro pdu no es válido. |
|
La longitud del búfer de salida no es suficiente. No se crearon parámetros de salida. |
|
El formato de mensaje SNMP en el búfer indicado por el parámetro msgBufDesc no es válido. No se crearon parámetros de salida. |
|
Error desconocido o indefinido. |
Comentarios
La implementación de Microsoft WinSNMP devuelve un valor de cero en los parámetros srcEntity y dstEntity cuando una aplicación envía un SNMPv1 o un mensaje SNMPv2C a la función SnmpDecodeMsg . Esto se debe a que el formato del mensaje no incluye la información de dirección necesaria para crear recursos de entidad winSNMP.
La implementación de Microsoft WinSNMP asigna recursos a la aplicación WinSNMP como resultado de una llamada correcta a la función SnmpDecodeMsg . Se recomienda que la aplicación WinSNMP libere recursos individuales con la función WinSNMP que corresponde al recurso. Para obtener más información, consulte Freeing WinSNMP Descriptors and WinSNMP Administración de datos Concepts.
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 |