Fonction EventProviderEnabled (evntprov.h)
Détermine si un fournisseur d’événements doit générer un événement particulier en fonction du niveau et du mot clé de l’événement.
Retourne FALSE si ETW peut déterminer rapidement qu’aucune session n’écoute un événement spécifié à partir du fournisseur donné. Sinon, retourne TRUE.
Syntaxe
BOOLEAN EVNTAPI EventProviderEnabled(
[in] REGHANDLE RegHandle,
[in] UCHAR Level,
[in] ULONGLONG Keyword
);
Paramètres
[in] RegHandle
Handle d’inscription du fournisseur. Le handle provient d’EventRegister.
Si RegHandle a la valeur NULL, EventProviderEnabled retourne FALSE.
[in] Level
Nombre 8 bits utilisé pour décrire la gravité ou l’importance d’un événement. Pour plus d’informations sur les valeurs au niveau de l’événement, consultez EVENT_DESCRIPTOR.
[in] Keyword
Masque de bits 64 bits utilisé pour indiquer l’appartenance d’un événement à un ensemble de catégories d’événements. Pour plus d’informations sur les valeurs de mot clé d’événements, consultez EVENT_DESCRIPTOR.
Valeur retournée
Retourne FALSE si ETW peut déterminer rapidement qu’aucune session n’écoute un événement spécifié à partir du fournisseur donné. Sinon, retourne TRUE.
Notes
Cette API fournit un moyen simple de déterminer si un événement est activé (c’est-à-dire si les sessions de consommateurs d’événements sont intéressées par la réception de l’événement) en fonction du handle fournisseur, du niveau de l’événement et de l’événement mot clé.
Notes
Cette API effectue un test rapide conservateur. Il est possible que cette API retourne true dans certains cas où un filtrage approfondi ultérieur détermine qu’aucune session n’a besoin d’enregistrer l’événement.
Cette API fournit des fonctionnalités similaires à celles fournies par EventEnabled. Lorsqu’un fournisseur a accès à la EVENT_DESCRIPTOR complète d’un événement, il doit utiliser EventEnabled. Lorsqu’un fournisseur n’a accès qu’au niveau et au mot clé de l’événement, il doit utiliser EventProviderEnabled.
La plupart des fournisseurs d’événements n’appellent pas EventProviderEnabled directement :
- Les API EventWrite incluent leur propre test EventProviderEnabled et retournent immédiatement si l’événement n’est pas activé.
- La plupart des fournisseurs ETW utilisent une infrastructure ETW (par exemple, manifestes ou TraceLogging) au lieu d’appeler directement EventWrite ou EventProviderEnabled. Les frameworks ETW fournissent généralement leur propre API prenant en charge les événements, qui doit être utilisée au lieu d’appeler EventProviderEnabled.
- Les implémentations de l’infrastructure ETW case activée généralement leur propre état de fournisseur au lieu d’appeler EventProviderEnabled.
Pour plus d’informations, consultez EventEnabled.
Spécifications
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | evntprov.h |
Bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |