structure smiVALUE (winsnmp.h)

[SNMP est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. Au lieu de cela, utilisez La gestion à distance Windows, qui est l’implémentation Microsoft de WS-Man.]

La structure smiVALUE WinSNMP décrit la valeur associée à un nom de variable dans une entrée de liaison de variable.

Le membre de syntaxe de la structure smiVALUE contient un type de données WinSNMP qui indique le type de données dans le membre value . Le membre de valeur de la structure est l’union de tous les types de données WinSNMP possibles.

Syntaxe

typedef struct {
  smiUINT32 syntax;
  union {
    smiINT    sNumber;
    smiUINT32 uNumber;
    smiCNTR64 hNumber;
    smiOCTETS string;
    smiOID    oid;
    smiBYTE   empty;
  } value;
} smiVALUE, *smiLPVALUE;

Membres

syntax

Type : smiUINT32

Spécifie un entier long non signé qui indique le type de données de syntaxe du membre de valeur. Ce membre ne peut être qu’un des types répertoriés dans le tableau suivant. Pour plus d’informations, consultez Types de données WinSNMP et RFC 1902, « Structure des informations de gestion pour la version 2 du protocole SNMPv2 (Simple Network Management Protocol) ».

Type de données syntaxique Signification
SNMP_SYNTAX_INT
Indique une variable entière signée 32 bits.
SNMP_SYNTAX_OCTETS
Indique une variable de chaîne d’octets qui est des données binaires ou textuelles.
SNMP_SYNTAX_NULL
Indique une valeur NULL .
SNMP_SYNTAX_OID
Indique une variable d’identificateur d’objet qui est un nom attribué avec un maximum de 128 sous-identificateurs.
SNMP_SYNTAX_INT32
Indique une variable entière signée 32 bits.
SNMP_SYNTAX_IPADDR
Indique une variable d’adresse Internet 32 bits.
SNMP_SYNTAX_CNTR32
Indique une variable de compteur qui augmente jusqu’à atteindre une valeur maximale de (2^32) à 1.
SNMP_SYNTAX_GAUGE32
Indique une variable de jauge qui est un entier non négatif qui peut augmenter ou diminuer, mais jamais dépasser une valeur maximale.
SNMP_SYNTAX_TIMETICKS
Indique une variable de compteur qui mesure le temps en centièmes de seconde, jusqu’à ce qu’elle atteigne une valeur maximale de (2^32) – 1. Il s’agit d’un entier non négatif relatif à un événement de minuteur spécifique.
SNMP_SYNTAX_OPAQUE
Ce type assure la compatibilité descendante et ne doit pas être utilisé pour les nouveaux types d’objets. Il prend en charge la possibilité de transmettre la syntaxe ASN.1 (Abstract Syntax Notation One) arbitraire.
SNMP_SYNTAX_CNTR64
Indique une variable de compteur qui augmente jusqu’à atteindre une valeur maximale de (2^64) – 1.
SNMP_SYNTAX_UINT32
Indique une variable entière non signée 32 bits.
SNMP_SYNTAX_NOSUCHOBJECT
Indique que l’agent ne prend pas en charge le type d’objet qui correspond à la variable.
SNMP_SYNTAX_NOSUCHINSTANCE
Indique que l’objet instance n’existe pas pour l’opération.
SNMP_SYNTAX_ENDOFMIBVIEW
Indique que l’application WinSNMP tente de référencer un identificateur d’objet qui se trouve au-delà de la fin de l’arborescence MIB prise en charge par l’agent.
 

Les trois derniers types de syntaxe décrivent des conditions d’exception dans l’infrastructure SNMP version 2C (SNMPv2C).

value

Spécifie l’union de tous les types de données de syntaxe WinSNMP possibles, y compris les types de descripteurs smiOID ou smiOCTETS .

sNumber

Type : smiINT Spécifie une valeur entière longue signée.

uNumber

Type : smiUINT32 Spécifie une valeur entière longue non signée 32 bits.

hNumber

Type : smiCNTR64 Spécifie une valeur entière non signée 64 bits

string

Type : smiOCTETS Spécifie une chaîne.

oid

Type : smiOID Spécifie un identificateur d’objet (OID).

empty

Type : smiBYTE Spécifie un membre vide.

value.sNumber

value.uNumber

value.hNumber

value.string

value.oid

value.empty

Remarques

Une application WinSNMP doit case activée le membre de syntaxe d’une structure smiVALUE pour déréférencer correctement le membre de valeur. Le membre de valeur peut contenir une valeur scalaire simple ou une valeur non scalaire comme un smiOCTETS ou une structure de descripteur smiOID .

Si le membre de syntaxe indique que le membre de valeur est une structure de descripteur smiOCTETS ou smiOID , l’application WinSNMP doit déterminer s’il faut libérer les ressources allouées pour la structure. L’implémentation de Microsoft WinSNMP alloue et libère la mémoire pour toutes les structures smiOCTETS et smiOID de sortie. L’application doit appeler la fonction SnmpFreeDescriptor pour libérer la mémoire du membre ptr de ces structures.

Étant donné que l’application WinSNMP alloue de la mémoire pour les descripteurs d’entrée avec des longueurs variables, elle doit libérer cette mémoire. Pour plus d’informations, consultez Concepts winSNMP Gestion des données.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête winsnmp.h

Voir aussi

SnmpCreateVbl

SnmpFreeDescriptor

SnmpGetVb

Vue d’ensemble de l’API WinSNMP

WinSNMP Structures

smiOCTETS

smiOID