Fonction SnmpStartup (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 SnmpStartup informe l’implémentation de Microsoft WinSNMP que l’application WinSNMP nécessite les services de l’implémentation. La fonction SnmpStartup 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 communications SNMP prises en charge par l’implémentation et les modes de traduction et de retransmission par défaut de l’implémentation.

Note Une application WinSNMP doit appeler correctement la fonction SnmpStartup avant d’appeler toute autre fonction WinSNMP.
 

Syntaxe

SNMPAPI_STATUS SNMPAPI_CALL SnmpStartup(
  [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 à l’interprétation par l’implémentation du 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 qui suit.

Code de retour Description
SNMPAPI_NOT_INITIALIZED
La fonction SnmpStartup ne s’est pas terminée correctement.
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 SnmpStartup au moins une fois, avant d’appeler toute autre fonction WinSNMP. Si une application WinSNMP appelle une autre fonction WinSNMP, avant d’appeler SnmpStartup, l’implémentation retourne l’erreur SNMPAPI_NOT_INITIALIZED.

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

Une application WinSNMP peut appeler SnmpStartup plusieurs fois. Par exemple, il peut être nécessaire de réessayer l’appel de fonction pour les raisons décrites précédemment. Une application WinSNMP doit également appeler SnmpCleanup au moins une fois, comme dernier appel de fonction WinSNMP avant son arrêt. Plusieurs appels SnmpStartup ne nécessitent pas plusieurs appels SnmpCleanup .

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

Configuration requise

Condition requise Valeur
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

SnmpCleanup

SnmpStrToContext

SnmpStrToEntity

Fonctions WinSNMP

Vue d’ensemble de l’API WinSNMP