Compartilhar via


Função SnmpListen (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 SnmpListen registra um aplicativo WinSNMP como um agente SNMP. Um aplicativo de agente chama essa função para informar à implementação do Microsoft WinSNMP que uma entidade atuará na função de um agente SNMP. Um aplicativo também chama essa função para informar a implementação quando uma entidade não atuará mais nessa função. A função SnmpListen é um elemento da API WinSNMP, versão 2.0.

Sintaxe

SNMPAPI_STATUS SNMPAPI_CALL SnmpListen(
  [in] HSNMP_ENTITY   hEntity,
  [in] SNMPAPI_STATUS lStatus
);

Parâmetros

[in] hEntity

Manipule para a entidade WinSNMP para notificar quando a implementação do Microsoft WinSNMP receber uma PDU (mensagem de solicitação SNMP) de entrada. Esse parâmetro identifica o aplicativo do agente. Para obter mais informações, consulte as seções Comentários e Valores Retornados a seguir.

Ao chamar a função SnmpCreateSession , você pode especificar se a implementação deve usar uma mensagem de notificação de janela ou uma função SNMPAPI_CALLBACK para notificar o aplicativo quando uma mensagem SNMP ou evento assíncrono estiver disponível.

[in] lStatus

Especifica uma variável de inteiro longo sem sinal que indica se a entidade WinSNMP identificada pelo parâmetro hEntity está agindo em uma função de agente SNMP ou se não está mais atuando nessa função. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
SNMPAPI_ON
A entidade WinSNMP especificada está funcionando em uma função de agente.
SNMPAPI_OFF
A entidade WinSNMP especificada não está funcionando em uma função de agente.
 

Passar um valor de SNMPAPI_OFF libera os recursos alocados para a entidade e a porta atribuída a ela. Para obter mais informações, consulte a seção Comentários a seguir.

Retornar valor

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_ENTITY_INVALID
O parâmetro hEntity é inválido. Esse parâmetro deve ser um identificador retornado por uma chamada anterior para a função SnmpStrToEntity .
SNMPAPI_MODE_INVALID
O parâmetro lStatus é inválido.
SNMPAPI_NOOP
A entidade especificada pelo parâmetro hEntity já está funcionando na função de um agente SNMP.
SNMPAPI_TL_RESOURCE_ERROR
Há um erro de camada de transporte de rede. Não foi possível criar um soquete para a entidade especificada pelo parâmetro hEntity .
SNMPAPI_TL_OTHER
Ocorreu um erro na camada de transporte de rede ao tentar associar um soquete para a entidade especificada pelo parâmetro hEntity .
SNMPAPI_OTHER_ERROR
Ocorreu um erro desconhecido ou indefinido.

Comentários

Ao especificar uma entidade, você especifica explicitamente a família de endereços, o endereço da interface e a porta para a entidade. Isso ocorre porque o WinSNMP atribui esses atributos a cada entidade WinSNMP como resultado de uma chamada para a função SnmpStrToEntity . A implementação usa as configurações de endereço e porta atualmente atribuídas à entidade especificada pelo parâmetro hEntity quando envia notificações ao aplicativo do agente. Para obter mais informações, consulte SnmpSetPort.

Ao chamar a função SnmpClose para uma sessão WinSNMP e a função SnmpCleanup para um aplicativo WinSNMP, você deve liberar todas as portas associadas a aplicativos do agente WinSNMP.

Para obter mais informações sobre aplicativos de gerenciamento SNMP e aplicativos de agente, consulte Registrando um aplicativo de agente SNMP e Sobre o SNMP.

Requisitos

Requisito Valor
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

SnmpCleanup

SnmpClose

SnmpRecvMsg

SnmpSendMsg

SnmpSetPort

SnmpStrToEntity

Funções WinSNMP

Visão geral da API do WinSNMP