Compartir a través de


Función SnmpOidCompare (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 SnmpOidCompare de WinSNMP compara de forma lexicográfica dos identificadores de objeto SNMP, hasta la longitud especificada por el parámetro maxlen .

Sintaxis

SNMPAPI_STATUS SNMPAPI_CALL SnmpOidCompare(
  [in]  smiLPCOID xOID,
  [in]  smiLPCOID yOID,
  [in]  smiUINT32 maxlen,
  [out] smiLPINT  result
);

Parámetros

[in] xOID

Puntero al primer identificador de objeto smiOID que se va a comparar. La longitud del identificador de objeto puede ser cero.

[in] yOID

Puntero al segundo identificador de objeto smiOID que se va a comparar. La longitud del identificador de objeto puede ser cero.

[in] maxlen

Si no es igual a cero, especifica el número de subidentificadores que se van a comparar. Este parámetro debe ser menor que MAXOBJIDSIZE: 128 subidentificadores, el número máximo de componentes de un identificador de objeto. Para obtener más información, vea la siguiente sección Comentarios.

[out] result

Puntero a una variable de entero para recibir el resultado de la comparación. La variable puede recibir uno de los siguientes resultados.

Resultado Significado
Mayor que 0
xOID es mayor que yOID
Igual a 0
xOID es igual a yOID
Menor que 0
xOID es menor que yOID
 

Para obtener más condiciones de comparación, consulte la sección Comentarios siguientes.

Valor devuelto

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

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 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_NOT_INITIALIZED
La función SnmpStartup no se completó correctamente.
SNMPAPI_ALLOC_ERROR
Error durante la asignación de memoria.
SNMPAPI_OID_INVALID
Uno o ambos parámetros xOID e yOID no son válidos.
SNMPAPI_SIZE_INVALID
El parámetro maxlen no es válido. El tamaño del parámetro es mayor que MAXOBJIDSIZE.
SNMPAPI_OTHER_ERROR
Error desconocido o indefinido.

Comentarios

Una aplicación WinSNMP puede llamar a la función SnmpOidCompare para determinar si dos identificadores de objeto tienen prefijos comunes.

Si el parámetro maxlen no es igual a cero y no mayor que MAXOBJIDSIZE, el valor de maxlen establece el límite superior para el número de subidentificadores que se van a comparar. El número máximo de subidentificadores a los que la función SnmpOidCompare compara los valores predeterminados con el número más pequeño, el parámetro maxlen o el miembro len de una de las estructuras smiOID a las que apuntan los parámetros xOID e yOID .

Si el parámetro maxlen es igual a cero, el número máximo de subidentificadores que la función SnmpOidCompare compara de forma predeterminada con el número que es el menor de los miembros len de las dos estructuras smiOID .

El valor del parámetro result indicará que xOID es igual a yOID si las dos estructuras smiOID son lexicográficamente iguales y se produce una de las siguientes acciones:

  • SnmpOidCompare compara un número máximo de subidentificadores.
  • SnmpOidCompare compara el número máximo de subidentificadores y los miembros len de ambas estructuras smiOID son iguales, pero menor que el parámetro maxlen .

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

Funciones winSNMP

Introducción a la API de WinSNMP

smiOID