SnmpCreatePdu, fonction (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. Utilisez plutôt Windows Remote Management, qui est l’implémentation Microsoft de WS-Man.]
La fonction SnmpCreatePdu WinSNMP crée et initialise une unité de données de protocole SNMP (PDU).
Syntaxe
HSNMP_PDU SNMPAPI_CALL SnmpCreatePdu(
[in] HSNMP_SESSION session,
[in] smiINT PDU_type,
[in] smiINT32 request_id,
[in] smiINT error_status,
[in] smiINT error_index,
[in] HSNMP_VBL varbindlist
);
Paramètres
[in] session
Gérez la session WinSNMP.
[in] PDU_type
Spécifie un type PDU qui identifie l’opération SNMP. Ce paramètre peut être NULL ou il peut s’agir de l’une des valeurs suivantes. Si ce paramètre a la valeur NULL, l’implémentation Microsoft WinSNMP fournit le type PDU par défaut SNMP_PDU_GETNEXT. Le seul type de PDU d’interruption que vous pouvez créer avec un appel à la fonction SnmpCreatePdu est une PDU d’interruption SNMPv2C.
[in] request_id
Spécifie une valeur numérique unique que l’application WinSNMP fournit pour identifier la PDU. Si ce paramètre a la valeur NULL, l’implémentation affecte une valeur.
[in] error_status
Si le paramètre PDU_type est égal à SNMP_PDU_GETBULK, ce paramètre spécifie une valeur pour le champ non_repeaters de la PDU. Pour les autres types de PDU, ce paramètre spécifie une valeur pour le champ error_status du PDU. Ce paramètre peut être NULL.
[in] error_index
Si le paramètre PDU_type est égal à SNMP_PDU_GETBULK, ce paramètre spécifie une valeur pour le champ max_repetitions de la PDU. Pour les autres types de PDU, ce paramètre spécifie une valeur pour le champ error_index du PDU. Ce paramètre peut être NULL.
[in] varbindlist
Handle vers une structure qui représente une liste de liaisons de variables SNMP. Ce paramètre peut être NULL.
Valeur retournée
Si la fonction réussit, la valeur de retour est le handle d’une nouvelle PDU SNMP.
Si la fonction échoue, la valeur de retour est SNMPAPI_FAILURE. Pour obtenir des informations d’erreur étendues, appelez SnmpGetLastError. La fonction SnmpGetLastError peut retourner l’une des erreurs suivantes.
Code de retour | Description |
---|---|
|
La fonction SnmpStartup ne s’est pas terminée correctement. |
|
Une erreur s’est produite lors de l’allocation de mémoire. |
|
Le handle de session n’est pas valide. |
|
Le type PDU n’est pas valide. |
|
La liste des liaisons de variables n’est pas valide. |
|
Une erreur inconnue ou non définie s’est produite. |
Remarques
Une application WinSNMP doit créer une PDU avant d’appeler les fonctions SnmpSendMsg ou SnmpEncodeMsg .
Tous les paramètres de la fonction SnmpCreatePdu sont obligatoires. Toutefois, tous les paramètres, à l’exception du paramètre de session , peuvent être NULL. Dans cette instance, la nouvelle PDU a les valeurs par défaut suivantes.
Champ | Contenu |
---|---|
PDU_type | SNMP_PDU_GETNEXT |
request_id | L’implémentation génère une valeur numérique. |
error_status | SNMP_ERROR_NOERROR |
error_index | 0 |
varbindlist | NULL |
L’application doit appeler la fonction SnmpFreePdu pour libérer les ressources que la fonction SnmpCreatePdu alloue pour la nouvelle PDU.
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 |