Funzione SnmpCreatePdu (winsnmp.h)
[SNMP è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. Usare invece Gestione remota Windows, ovvero l'implementazione Microsoft di WS-Man.
La funzione SnmpCreatePdu WinSNMP crea e inizializza un'unità dati del protocollo SNMP (PDU).
Sintassi
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
);
Parametri
[in] session
Gestire la sessione WinSNMP.
[in] PDU_type
Specifica un tipo PDU che identifica l'operazione SNMP. Questo parametro può essere NULL oppure può essere uno dei valori seguenti. Se questo parametro è NULL, l'implementazione di Microsoft WinSNMP fornisce il tipo PDU predefinito SNMP_PDU_GETNEXT. L'unico tipo di PDU trap che è possibile creare con una chiamata alla funzione SnmpCreatePdu è un PDU trap SNMPv2C.
[in] request_id
Specifica un valore numerico univoco fornito dall'applicazione WinSNMP per identificare l'PDU. Se questo parametro è NULL, l'implementazione assegna un valore.
[in] error_status
Se il parametro PDU_type è uguale a SNMP_PDU_GETBULK, questo parametro specifica un valore per il campo non_repeaters dell'PDU. Per altri tipi PDU, questo parametro specifica un valore per il campo error_status dell'PDU. Questo parametro può essere NULL.
[in] error_index
Se il parametro PDU_type è uguale a SNMP_PDU_GETBULK, questo parametro specifica un valore per il campo max_repetitions dell'PDU. Per altri tipi PDU, questo parametro specifica un valore per il campo error_index del PDU. Questo parametro può essere NULL.
[in] varbindlist
Handle in una struttura che rappresenta un elenco di associazioni di variabili SNMP. Questo parametro può essere NULL.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è l'handle di un nuovo PDU SNMP.
Se la funzione ha esito negativo, il valore restituito è SNMPAPI_FAILURE. Per ottenere informazioni sull'errore estese, chiamare SnmpGetLastError. La funzione SnmpGetLastError può restituire uno degli errori seguenti.
Codice restituito | Descrizione |
---|---|
|
La funzione SnmpStartup non è stata completata correttamente. |
|
Errore durante l'allocazione della memoria. |
|
L'handle di sessione non è valido. |
|
Il tipo PDU non è valido. |
|
L'elenco di associazioni di variabili non è valido. |
|
Si è verificato un errore sconosciuto o non definito. |
Commenti
Un'applicazione WinSNMP deve creare un PDU prima di chiamare snmpSendMsg o le funzioni SnmpEncodeMsg .
Sono necessari tutti i parametri della funzione SnmpCreatePdu . Tuttavia, tutti i parametri, ad eccezione del parametro di sessione , possono essere NULL. In questa istanza il nuovo PDU ha i valori predefiniti seguenti.
Campo | Contenuto |
---|---|
PDU_type | SNMP_PDU_GETNEXT |
request_id | L'implementazione genera un valore numerico. |
error_status | SNMP_ERROR_NOERROR |
error_index | 0 |
varbindlist | NULL |
L'applicazione deve chiamare la funzione SnmpFreePdu per rilasciare le risorse allocate dalla funzione SnmpCreatePdu per il nuovo PDU.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winsnmp.h |
Libreria | Wsnmp32.lib |
DLL | Wsnmp32.dll |