Fonction SnmpEncodeMsg (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.]

L’implémentation Microsoft WinSNMP utilise les paramètres passés dans la fonction WinSNMP SnmpEncodeMsg pour encoder un message SNMP. L’implémentation retourne le message SNMP encodé à l’application WinSNMP dans la mémoire tampon spécifiée par le paramètre msgBufDesc .

Syntaxe

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
);

Paramètres

[in] session

Gérez la session WinSNMP.

[in] srcEntity

Gérez vers l’entité de gestion qui lance la demande d’encodage du message SNMP.

[in] dstEntity

Gérez l’entité de gestion cible.

[in] context

Gérez le contexte (un ensemble de ressources d’objets managés) que l’entité de gestion cible contrôle.

[in] pdu

Gérez vers le PDU qui contient la demande d’opération SNMP.

[out] msgBufDesc

Pointeur vers une structure smiOCTETS qui reçoit le message SNMP encodé.

Valeur retournée

Si la fonction réussit, la valeur de retour est la longueur, en octets, du message SNMP encodé. Ce nombre est également la valeur du membre len de la structure smiOCTETS pointée vers le paramètre msgBufDesc .

Si la fonction échoue, la valeur de retour est SNMPAPI_FAILURE. Pour plus d’informations, consultez la section Remarques suivante. Pour obtenir des informations d’erreur étendues, appelez SnmpGetLastError. La fonction SnmpGetLastError peut retourner l’une des erreurs suivantes.

Code de retour Description
SNMPAPI_NOT_INITIALIZED
La fonction SnmpStartup ne s’est pas terminée correctement.
SNMPAPI_ALLOC_ERROR
Une erreur s’est produite lors de l’allocation de mémoire.
SNMPAPI_SESSION_INVALID
Le paramètre de session n’est pas valide.
SNMPAPI_ENTITY_INVALID
L’un des paramètres d’entité ou les deux n’est pas valide.
SNMPAPI_CONTEXT_INVALID
Le paramètre de contexte n’est pas valide.
SNMPAPI_PDU_INVALID
Le paramètre pdu n’est pas valide.
SNMPAPI_OTHER_ERROR
Une erreur inconnue ou non définie s’est produite.

Remarques

Les cinq premiers paramètres passés à la fonction SnmpEncodeMsg sont les mêmes que les paramètres passés à la fonction SnmpSendMsg .

L’application WinSNMP doit appeler la fonction SnmpFreeDescriptor pour libérer les ressources allouées au membre ptr de la structure smiOCTETS . Il s’agit de la structure vers laquelle pointe le paramètre msgBufDesc . Pour plus d’informations, consultez Concepts de Gestion des données WinSNMP.

En entrée, la fonction SnmpEncodeMsg ignore les membres de la structure pointée vers le paramètre msgBufDesc . L’implémentation remplace les membres de la structure si la fonction se termine correctement.

L’implémentation vérifie le format des cinq premiers paramètres d’entrée. Si l’un des paramètres n’est pas valide, SnmpEncodeMsg retourne SNMPAPI_FAILURE et SnmpGetLastError retourne un code d’erreur étendu.

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]
Plateforme cible Windows
En-tête winsnmp.h
Bibliothèque Wsnmp32.lib
DLL Wsnmp32.dll

Voir aussi

SnmpDecodeMsg

SnmpFreeDescriptor

SnmpSendMsg

Fonctions WinSNMP

Vue d’ensemble de l’API WinSNMP

smiOCTETS