Condividi tramite


Funzione SnmpEncodeMsg (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.

L'implementazione di Microsoft WinSNMP usa i parametri passati nella funzione SnmpEncodeMsg WinSNMP per codificare un messaggio SNMP. L'implementazione restituisce il messaggio SNMP codificato all'applicazione WinSNMP nel buffer specificato dal parametro msgBufDesc .

Sintassi

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

Parametri

[in] session

Gestire la sessione WinSNMP.

[in] srcEntity

Gestire l'entità di gestione che avvia la richiesta per codificare il messaggio SNMP.

[in] dstEntity

Gestire l'entità di gestione di destinazione.

[in] context

Gestire il contesto (un set di risorse dell'oggetto gestito) che controlla l'entità di gestione di destinazione.

[in] pdu

Gestire l'PDU che contiene la richiesta di operazione SNMP.

[out] msgBufDesc

Puntatore a una struttura smiOCTETS che riceve il messaggio SNMP codificato.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è la lunghezza, in byte, del messaggio SNMP codificato. Questo numero è anche il valore del membro len della struttura smiOCTETS a cui punta il parametro msgBufDesc .

Se la funzione ha esito negativo, il valore restituito è SNMPAPI_FAILURE. Per altre informazioni, vedere la sezione Osservazioni seguenti. Per ottenere informazioni sull'errore estese, chiamare SnmpGetLastError. La funzione SnmpGetLastError può restituire uno degli errori seguenti.

Codice restituito Descrizione
SNMPAPI_NOT_INITIALIZED
La funzione SnmpStartup non è stata completata correttamente.
SNMPAPI_ALLOC_ERROR
Errore durante l'allocazione della memoria.
SNMPAPI_SESSION_INVALID
Il parametro di sessione non è valido.
SNMPAPI_ENTITY_INVALID
Uno o entrambi i parametri dell'entità non sono validi.
SNMPAPI_CONTEXT_INVALID
Il parametro di contesto non è valido.
SNMPAPI_PDU_INVALID
Il parametro pdu non è valido.
SNMPAPI_OTHER_ERROR
Si è verificato un errore sconosciuto o non definito.

Commenti

I primi cinque parametri passati alla funzione SnmpEncodeMsg sono gli stessi parametri passati alla funzione SnmpSendMsg .

L'applicazione WinSNMP deve chiamare la funzione SnmpFreeDescriptor per liberare risorse allocate per il membro ptr della struttura smiOCTETS . Questa è la struttura a cui fa riferimento il parametro msgBufDesc . Per altre informazioni, vedere Concetti di Gestione dati WinSNMP.

In input, la funzione SnmpEncodeMsg ignora i membri della struttura a cui punta il parametro msgBufDesc . L'implementazione sovrascrive i membri della struttura se la funzione viene completata correttamente.

L'implementazione verifica il formato dei primi cinque parametri di input. Se uno dei parametri non è valido, SnmpEncodeMsg restituisce SNMPAPI_FAILURE e SnmpGetLastError restituisce un codice di errore esteso.

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

Vedi anche

SnmpDecodeMsg

SnmpFreeDescriptor

SnmpSendMsg

Funzioni WinSNMP

Panoramica dell'API WinSNMP

smiOCTETS