Compartilhar via


Função SnmpSetPduData (winsnmp.h)

[O SNMP está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. Em vez disso, use o Gerenciamento Remoto do Windows, que é a implementação da Microsoft do WS-Man.]

A função WinSNMP SnmpSetPduData atualiza os campos de dados selecionados na PDU (unidade de dados de protocolo SNMP) especificada.

Sintaxe

SNMPAPI_STATUS SNMPAPI_CALL SnmpSetPduData(
  [in] HSNMP_PDU       PDU,
  [in] const smiINT    *PDU_type,
  [in] const smiINT32  *request_id,
  [in] const smiINT    *non_repeaters,
  [in] const smiINT    *max_repetitions,
  [in] const HSNMP_VBL *varbindlist
);

Parâmetros

[in] PDU

Manipule para um PDU SNMP.

[in] PDU_type

Ponteiro para uma variável com um valor para atualizar o campo PDU_type da PDU especificada. Esse parâmetro também pode ser NULL.

[in] request_id

Ponteiro para uma variável com um valor para atualizar o campo request_id da PDU especificada. Esse parâmetro também pode ser NULL.

[in] non_repeaters

Se o parâmetro PDU_type for igual a SNMP_PDU_GETBULK, esse parâmetro apontará para uma variável com um valor para atualizar o campo non_repeaters da PDU especificada. A implementação do Microsoft WinSNMP ignora esse parâmetro para outros tipos de PDU. Esse parâmetro também pode ser NULL.

[in] max_repetitions

Se o parâmetro PDU_type for igual a SNMP_PDU_GETBULK, esse parâmetro apontará para uma variável com um valor para atualizar o campo max_repetitions da PDU especificada. A implementação ignora esse parâmetro para outros tipos de PDU. Esse parâmetro também pode ser NULL.

[in] varbindlist

Ponteiro para uma variável com um valor que atualiza o identificador para o campo de lista de associações de variáveis da PDU especificada. Esse parâmetro também pode ser NULL.

Valor retornado

Se a função for bem-sucedida, o valor retornado será SNMPAPI_SUCCESS.

Se a função falhar, o valor retornado será SNMPAPI_FAILURE. Para obter informações de erro estendidas, chame SnmpGetLastError. A função SnmpGetLastError pode retornar um dos erros a seguir.

Código de retorno Descrição
SNMPAPI_NOT_INITIALIZED
A função SnmpStartup não foi concluída com êxito.
SNMPAPI_ALLOC_ERROR
Ocorreu um erro durante a alocação de memória.
SNMPAPI_PDU_INVALID
O tipo de PDU é inválido.
SNMPAPI_VBL_INVALID
A lista de associações de variáveis é inválida.
SNMPAPI_NOOP
Todos os parâmetros de entrada são NULL. A operação SNMP não foi executada.
SNMPAPI_OTHER_ERROR
Ocorreu um erro desconhecido ou indefinido.

Comentários

Todos os parâmetros da função SnmpSetPduData são necessários. No entanto, todos os parâmetros, exceto o parâmetro PDU , podem ser NULL. Se o aplicativo WinSNMP passar NULL em um parâmetro, SnmpSetPduData não atualizará o campo correspondente na PDU. Como SnmpSetPduData passa parâmetros como ponteiros para valores, um aplicativo ainda pode atualizar um campo PDU com NULL.

O valor de um campo de PDU pode ser válido sozinho, mas pode ser invalidado em combinação com valores para outros campos. A implementação valida a PDU e os outros elementos de mensagem quando o aplicativo chama as funções SnmpSendMsg ou SnmpEncodeMsg . A implementação rejeita PDUs inválidas.

O único tipo de PDU de interceptação que você pode atualizar com uma chamada para a função SnmpSetPduData é uma PDU de interceptação SNMPv2C.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winsnmp.h
Biblioteca Wsnmp32.lib
DLL Wsnmp32.dll

Confira também

SnmpEncodeMsg

SnmpSendMsg

Funções WinSNMP

Visão geral da API do WinSNMP