Función SnmpCreatePdu (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.]
La función SnmpCreatePdu de WinSNMP crea e inicializa una unidad de datos del protocolo SNMP (PDU).
Sintaxis
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
);
Parámetros
[in] session
Controla la sesión de WinSNMP.
[in] PDU_type
Especifica un tipo PDU que identifica la operación SNMP. Este parámetro puede ser NULL o puede ser uno de los valores siguientes. Si este parámetro es NULL, la implementación de Microsoft WinSNMP proporciona el tipo PDU predeterminado SNMP_PDU_GETNEXT. El único tipo de PDU de captura que puede crear con una llamada a la función SnmpCreatePdu es una PDU de captura de SNMPv2C.
[in] request_id
Especifica un valor numérico único que la aplicación WinSNMP proporciona para identificar el PDU. Si este parámetro es NULL, la implementación asigna un valor.
[in] error_status
Si el parámetro PDU_type es igual a SNMP_PDU_GETBULK, este parámetro especifica un valor para el campo non_repeaters del PDU. Para otros tipos PDU, este parámetro especifica un valor para el campo error_status de la PDU. Este parámetro puede ser NULL.
[in] error_index
Si el parámetro PDU_type es igual a SNMP_PDU_GETBULK, este parámetro especifica un valor para el campo max_repetitions del PDU. Para otros tipos PDU, este parámetro especifica un valor para el campo error_index del PDU. Este parámetro puede ser NULL.
[in] varbindlist
Identificador de una estructura que representa una lista de enlaces de variables SNMP. Este parámetro puede ser NULL.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es el identificador de un nuevo PDU snmp.
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 |
---|---|
|
La función SnmpStartup no se completó correctamente. |
|
Error durante la asignación de memoria. |
|
El identificador de sesión no es válido. |
|
El tipo PDU no es válido. |
|
La lista de enlaces de variables no es válida. |
|
Se produjo un error desconocido o no definido. |
Comentarios
Una aplicación WinSNMP debe crear una PDU antes de llamar a las funciones SnmpSendMsg o SnmpEncodeMsg .
Se requieren todos los parámetros de la función SnmpCreatePdu . Sin embargo, todos los parámetros, excepto el parámetro session , pueden ser NULL. En este caso, la nueva PDU tiene los siguientes valores predeterminados.
Campo | Contenido |
---|---|
PDU_type | SNMP_PDU_GETNEXT |
id_de_solicitud | La implementación genera un valor numérico. |
error_status | SNMP_ERROR_NOERROR |
error_index | 0 |
varbindlist | NULL |
La aplicación debe llamar a la función SnmpFreePdu para liberar los recursos que la función SnmpCreatePdu asigna para la nueva PDU.
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 |