Fonction SnmpStartupEx (winsnmp.h)

[SNMP est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. Au lieu de cela, utilisez La gestion à distance Windows, qui est l’implémentation Microsoft de WS-Man.]

La fonction SnmpStartupEx informe l’implémentation de Microsoft WinSNMP que l’application WinSNMP nécessite les services de l’implémentation. La fonction SnmpStartupEx WinSNMP permet à l’implémentation d’initialiser et de retourner à l’application la version de l’interface de programmation d’application Windows SNMP (API WinSNMP), le niveau de communication SNMP pris en charge par l’implémentation, ainsi que les modes de traduction et de retransmission par défaut de l’implémentation.

Cette fonction doit être utilisée à la place de SnmpStartup si Windows Server 2003 avec Service Pack 1 (SP1) ou version ultérieure est installé. SnmpStartupEx permet la prise en charge de plusieurs modules logiciels indépendants qui utilisent WinSNMP dans la même application.

Note Une application WinSNMP doit appeler correctement la fonction SnmpStartupEx avant d’appeler une autre fonction WinSNMP.
 

Syntaxe

SNMPAPI_STATUS SNMPAPI_CALL SnmpStartupEx(
  [out] smiLPUINT32 nMajorVersion,
  [out] smiLPUINT32 nMinorVersion,
  [out] smiLPUINT32 nLevel,
  [out] smiLPUINT32 nTranslateMode,
  [out] smiLPUINT32 nRetransmitMode
);

Paramètres

[out] nMajorVersion

Pointeur vers une variable entière longue non signée pour recevoir le numéro de version principale de l’API WinSNMP prise en charge par l’implémentation. Par exemple, pour indiquer que l’implémentation prend en charge WinSNMP version 2.0, la fonction retourne la valeur 2.

[out] nMinorVersion

Pointeur vers une variable entière longue non signée pour recevoir le numéro de version mineure de l’API WinSNMP prise en charge par l’implémentation. Par exemple, pour indiquer que l’implémentation prend en charge WinSNMP version 2.0, la fonction retourne la valeur 0.

[out] nLevel

Pointeur vers une variable entière longue non signée pour recevoir le plus haut niveau de communications SNMP prise en charge par l’implémentation. En cas de retour réussi, ce paramètre contient la valeur 2. Pour obtenir une description de la prise en charge du niveau 2, consultez Niveaux de prise en charge SNMP.

[out] nTranslateMode

Pointeur vers une variable entière longue non signée pour recevoir le mode de traduction par défaut en vigueur pour l’implémentation. Le mode de traduction s’applique à la façon dont l’implémentation interprète le paramètre d’entité , que l’application WinSNMP transmet à la fonction SnmpStrToEntity . Le mode de traduction s’applique également au paramètre de chaîne que l’application WinSNMP passe à la fonction SnmpStrToContext . Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
SNMPAPI_TRANSLATED
L’implémentation utilise sa base de données pour traduire des noms conviviaux pour les entités SNMP et les objets managés. L’implémentation les traduit en composants SNMPv1 ou SNMPv2C.
SNMPAPI_UNTRANSLATED_V1
L’implémentation interprète les paramètres d’entité SNMP comme des adresses de transport SNMP et les paramètres de contexte comme des chaînes de communauté SNMP. Pour les entités de destination SNMPv2, l’implémentation crée des messages SNMP sortants qui contiennent la valeur zéro dans le champ de version.
SNMPAPI_UNTRANSLATED_V2
L’implémentation interprète les paramètres d’entité SNMP comme des adresses de transport SNMP et les paramètres de contexte comme des chaînes de communauté SNMP. Pour les entités de destination SNMPv2, l’implémentation crée des messages SNMP sortants qui contiennent la valeur 1 dans le champ de version.
 

Pour plus d’informations, consultez Définition du mode de traduction d’entité et de contexte.

[out] nRetransmitMode

Pointeur vers une variable entière longue non signée pour recevoir le mode de retransmission par défaut en vigueur pour l’implémentation. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
SNMPAPI_OFF
L’implémentation n’exécute pas la stratégie de retransmission de l’application WinSNMP.
SNMPAPI_ON
L’implémentation exécute la stratégie de retransmission de l’application WinSNMP.
 

Pour plus d’informations, consultez À propos de la retransmission.

Valeur retournée

Si la fonction réussit, la valeur de retour est SNMPAPI_SUCCESS et les paramètres contiennent les valeurs appropriées, comme indiqué dans les descriptions de paramètres précédentes.

Si la fonction échoue, la valeur de retour est SNMPAPI_FAILURE. Pour obtenir des informations d’erreur étendues, appelez SnmpGetLastError en spécifiant une valeur NULL dans son paramètre de session . La fonction SnmpGetLastError peut retourner l’une des erreurs suivantes. Pour plus d’informations, consultez la section « Remarques » plus loin dans ce document.

Code de retour Description
SNMPAPI_TL_RESOURCE_ERROR
Une erreur d’allocation de ressources s’est produite au démarrage.
SNMPAPI_TL_NOT_INITIALIZED
La fonction SnmpStartupEx n’a pas été correctement initialisé.
SNMPAPI_ALLOC_ERROR
Une erreur s’est produite lors de l’allocation de mémoire.
SNMPAPI_OTHER_ERROR
Une erreur inconnue ou non définie s’est produite.

Remarques

Une application WinSNMP doit appeler la fonction SnmpStartupEx avec succès au moins une fois, avant d’appeler toute autre fonction WinSNMP. Si une application WinSNMP appelle une autre fonction WinSNMP avant d’appeler SnmpStartupEx, l’implémentation retourne l’erreur SNMPAPI_NOT_INITIALIZED.

L’application WinSNMP peut appeler SnmpGetLastError pour obtenir des informations d’erreur ou réessayer SnmpStartupEx si un appel à la fonction SnmpStartupEx échoue. Lorsque SnmpStartupEx retourne SNMPAPI_FAILURE et qu’un appel ultérieur à SnmpGetLastError retourne SNMP_ALLOC_ERROR, l’application WinSNMP peut choisir d’attendre. Il peut réessayer l’appel à SnmpStartupEx lorsque l’implémentation dispose de ressources libres adéquates.

Une application WinSNMP doit appeler SnmpCleanupEx pour chaque appel réussi à SnmpStartupEx. L’implémentation de WinSNMP effectue le nettoyage final en l’absence d’appels réussis à SnmpStartup ou SnmpStartupEx.

Pour plus d’informations, consultez Niveaux de prise en charge SNMP et À propos des versions SNMP.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winsnmp.h
Bibliothèque Wsnmp32.lib
DLL Wsnmp32.dll

Voir aussi

SnmpCleanupEx

SnmpStrToContext

SnmpStrToEntity

Vue d’ensemble de l’API WinSNMP

Fonctions WinSNMP