Compartir a través de


Función SnmpGetVb (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 administración remota de Windows, que es la implementación de Microsoft de WS-Man.]

Una aplicación WinSNMP llama a la función SnmpGetVb para recuperar información de una lista de enlaces de variables. Esta función WinSNMP recupera un nombre de variable y su valor asociado de la entrada de enlace de variables especificada por el parámetro index .

Sintaxis

SNMPAPI_STATUS SNMPAPI_CALL SnmpGetVb(
  [in]  HSNMP_VBL  vbl,
  [in]  smiUINT32  index,
  [out] smiLPOID   name,
  [out] smiLPVALUE value
);

Parámetros

[in] vbl

Identificador de la lista de enlaces de variables que se va a recuperar.

[in] index

Especifica una variable de entero largo sin signo que identifica la entrada de enlace de variable que se va a recuperar. Esta variable contiene la posición de la entrada de enlace de variable, dentro de la lista de enlaces de variables.

Los valores válidos para este parámetro están en el intervalo de 1 a n, donde 1 indica la primera entrada de enlace de variable en la lista de enlaces de variables y n es el número total de entradas de la lista. Para obtener más información, vea la siguiente sección Comentarios.

[out] name

Puntero a una estructura smiOID para recibir el nombre de variable de la entrada de enlace de variable.

[out] value

Puntero a una estructura smiVALUE para recibir el valor asociado a la variable identificada por el parámetro name .

Si la función se realiza correctamente, el miembro de sintaxis de la estructura a la que apunta el parámetro value puede ser uno de los siguientes tipos de datos de sintaxis. Para obtener más información, vea RFC 1902, "Structure of Management Information for Version 2 of the Simple Network Management Protocol (SNMPv2)."

Tipo de datos de sintaxis Significado
SNMP_SYNTAX_INT
Indica una variable de entero con signo de 32 bits.
SNMP_SYNTAX_OCTETS
Indica una variable de cadena de octetos que es datos binarios o textuales.
SNMP_SYNTAX_NULL
Indica un valor NULL .
SNMP_SYNTAX_OID
Indica una variable de identificador de objeto que es un nombre asignado con un máximo de 128 subidentificadores.
SNMP_SYNTAX_INT32
Indica una variable de entero con signo de 32 bits.
SNMP_SYNTAX_IPADDR
Indica una variable de dirección de Internet de 32 bits. Si se usa el formato de captura de PDU de SNMPv1 para representar una dirección IPv6, este valor es 0.0.0.0.
SNMP_SYNTAX_CNTR32
Indica una variable de contador que aumenta hasta que alcanza un valor máximo de (2^32) – 1.
SNMP_SYNTAX_GAUGE32
Indica una variable de medidor que es un entero no negativo que puede aumentar o disminuir, pero que nunca supera un valor máximo.
SNMP_SYNTAX_TIMETICKS
Indica una variable de contador que mide el tiempo en centésimas de segundo, hasta que alcanza un valor máximo de (2^32) – 1. Es un entero no negativo que es relativo a un evento de temporizador específico.
SNMP_SYNTAX_OPAQUE
Este tipo proporciona compatibilidad con versiones anteriores y no debe usarse para los nuevos tipos de objeto. Admite la capacidad de pasar sintaxis abstracta arbitraria notación de sintaxis one (ASN.1).
SNMP_SYNTAX_CNTR64
Indica una variable de contador que aumenta hasta que alcanza un valor máximo de (2^64) – 1.
SNMP_SYNTAX_UINT32
Indica una variable de entero sin signo de 32 bits.
SNMP_SYNTAX_NOSUCHOBJECT
Indica que el agente no admite el tipo de objeto que corresponde a la variable .
SNMP_SYNTAX_NOSUCHINSTANCE
Indica que la instancia de objeto no existe para la operación.
SNMP_SYNTAX_ENDOFMIBVIEW
Indica que la aplicación WinSNMP está intentando hacer referencia a un identificador de objeto que está más allá del final del árbol MIB que admite el agente.

Valor devuelto

Si la función se realiza correctamente, se SNMPAPI_SUCCESS el valor devuelto.

Si se produce un error en la función, el valor devuelto se 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
SNMPAPI_NOT_INITIALIZED
La función SnmpStartup no se completó correctamente.
SNMPAPI_ALLOC_ERROR
Error durante la asignación de memoria.
SNMPAPI_INDEX_INVALID
El parámetro de índice no es válido.
SNMPAPI_VBL_INVALID
El parámetro vbl no es válido.
SNMPAPI_OTHER_ERROR
Se produjo un error desconocido o no definido.

Comentarios

Los tres últimos tipos de sintaxis describen las condiciones de excepción en el marco snmp versión 2C(SNMPv2C).

La función SnmpGetVb devuelve el nombre de variable de la entrada de enlace de variables en la estructura a la que apunta el parámetro name . Devuelve el valor asociado de la variable en la estructura a la que apunta el parámetro value .

En la entrada, la función SnmpGetVb omite los miembros de las estructuras smiOID y smiVALUE a las que apunta el nombre y los parámetros de valor, respectivamente. La implementación de Microsoft WinSNMP sobrescribe los miembros si la función se completa correctamente.

Los valores válidos para una aplicación WinSNMP que se va a usar para el parámetro de índice son los siguientes:

  • Valor devuelto de una llamada a la función SnmpCountVbl
  • Campo de índice de error de una unidad de datos de protocolo (PDU) de SNMP_PDU_RESPONSE devuelta por una llamada a la función SnmpRecvMsg
La aplicación WinSNMP debe llamar a la función SnmpFreeDescriptor para liberar recursos asignados para el miembro ptr de la estructura smiOID a la que apunta el parámetro name . La aplicación también debe llamar a la función SnmpFreeDescriptor para liberar los recursos asignados para la estructura smiVALUE a la que apunta el parámetro value en las condiciones siguientes. Si el miembro de valor es un smiOCTETS o una estructura smiOID , la aplicación debe llamar a SnmpFreeDescriptor para liberar los recursos asignados para estas estructuras. Para obtener más información, consulte Conceptos de winSNMP Administración de datos.

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

SnmpCountVbl

SnmpFreeDescriptor

SnmpRecvMsg

Funciones winSNMP

Introducción a la API winSNMP

smiOCTETS

smiOID

smiVALUE