Partager via


Inf AddEventProvider, directive

Une directive AddEventProvider est utilisée dans un DDInstall INF. Section Événements. Il spécifie les caractéristiques des fournisseurs de suivi d’événements pour Windows (ETW) associés aux pilotes. Cette directive est prise en charge pour Windows 10 version 1809 et ultérieure.

[DDInstall.Events] 

AddEventProvider={ProviderGUID},event-provider-install-section
...

Entrées

ProviderGUID
Spécifie la valeur GUID qui identifie le fournisseur. Cela peut être exprimé sous la forme d’une valeur GUID explicite du formulaire {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} ou d’un jeton %strkey% défini sur {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} dans une section Strings du fichier INF.

event-provider-install-section
Fait référence à une section définie par l’enregistreur INF qui contient des informations pour l’inscription du fournisseur pour cet appareil (ou ces appareils). Pour plus d’informations, consultez la section Notes suivante.

Remarques

Les extensions définies par le système et qui ne respectent pas la casse peuvent être insérées dans un DDInstall. Section Événements qui contient une directive AddEventProvider dans des fichiers INF interplateformes et/ou système d’exploitation pour spécifier des installations spécifiques à la plateforme ou au système d’exploitation.

Chaque nom de section créé par l’enregistreur INF doit être unique dans le fichier INF et respecter les règles générales de définition des noms de section. Pour plus d’informations sur ces règles, consultez Règles de syntaxe générales pour les fichiers INF.

Une directive AddEventProvider doit référencer une section nommée event-provider-install-section ailleurs dans le fichier INF. Chacune de ces sections se présente sous la forme suivante :

[event-provider-install-section]
 
ProviderName=name
ResourceFile=path-to-file
[MessageFile=path-to-file]
[ParameterFile=path-to-file]
(ImportChannel=channel-name) |
(AddChannel=channel-name,channel-type[,channel-install-section])
...

Chaque section event-provider-install-section doit fournir ProviderName et ResourceFile. Si vous le souhaitez, spécifiez une liste de canaux pour le fournisseur à l’aide d’une combinaison de ImportChannel(s) et addChannel(s), chacun sur une ligne distincte. Pour plus d’informations sur les listes de canaux dans un fichier INF, consultez Spécification d’une liste de canaux ci-dessous. Pour plus d’informations sur les canaux du journal des événements Windows , consultez Définition de canaux.

Entrées et valeurs de section Event-Provider-Install

Providername=Nom
Spécifie le nom du fournisseur. Le nom ne peut pas contenir plus de 255 caractères et ne peut pas contenir les caractères « »,> «< & », « », « », « | », « », « », « : », « », « ? », « * » ou des caractères dont les valeurs ASCII sont inférieures à 31. En outre, le nom doit respecter les contraintes générales sur les noms de clés de fichier et de Registre. Ces contraintes se trouvent dans Limites de taille d’élément de nommage d’un fichier et d’élément de registre.

ResourceFile=chemin d’accès au fichier
Spécifie le chemin d’accès à l’exe ou dll qui contient les ressources de métadonnées du fournisseur, exprimé sous la forme %dirid%\filename.

Le numéro dirid est un identificateur de répertoire personnalisé ou l’un des identificateurs de répertoire définis par le système décrits dans Utilisation de Dirids.

MessageFile=chemin d’accès au fichier
Spécifie éventuellement le chemin d’accès à l’exe ou à la dll qui contient les ressources de message localisées du fournisseur, exprimée sous la forme %dirid%\filename.

ParameterFile=chemin d’accès au fichier
Spécifie éventuellement le chemin d’accès à l’exe ou à la dll qui contient les ressources de chaîne de paramètre du fournisseur, exprimées sous la forme %dirid%\filename.

ImportChannel=channel-name
Spécifie éventuellement un canal qui a été défini par un autre fournisseur. Pour plus d’informations, consultez la section Spécification d’une liste de canaux suivante.

AddChannel=channel-name,channel-type[,channel-install-section]
Spécifie éventuellement un canal avec une sous-directive qui fait éventuellement référence à une section channel-install-install définie par inf-writer ailleurs dans le fichier INF. Pour plus d’informations, consultez la section Spécification d’une liste de canaux suivante.

Spécification d’une liste de canaux

Vous pouvez spécifier une liste de canaux pour le fournisseur dans sa section event-provider-install. Vous pouvez importer un canal ou ajouter un canal à la liste et l’ordre de ces canaux est conservé. Pour plus d’informations, consultez Définition de canaux.

Le channel-name doit être unique dans la liste des canaux que le fournisseur utilise. Le channel-name doit comporter moins de 255 caractères et ne peut pas contenir les caractères suivants : « »,> «< & », « », « | », « », « », « », « : », « », « » « ? », « * » ou des caractères dont les valeurs ASCII sont inférieures à 31.

Le type de canal peut être spécifié comme l’une des valeurs numériques suivantes, exprimées soit en décimal, soit, comme indiqué dans la liste suivante, en notation hexadécimale.

0x1 (Administration)
Administration types de canaux prennent en charge les événements qui ciblent les utilisateurs finaux, les administrateurs et le personnel de support. Les événements écrits dans les canaux Administration doivent avoir une solution bien définie sur laquelle l’administrateur peut agir.

0x2 (opérationnel)
Les canaux de type opérationnel prennent en charge les événements utilisés pour analyser et diagnostiquer un problème ou une occurrence. Ils peuvent être utilisés pour déclencher des outils ou des tâches selon le problème ou l'occurrence.

0x3 (analytique)
Les canaux de type analytique prennent en charge les événements publiés dans un volume élevé. Ils décrivent une opération de programme et indiquent des problèmes qui ne peuvent pas être pris en charge par une intervention de l'utilisateur.

0x4 (Débogage)
Les canaux de type de débogage prennent en charge les événements qui sont utilisés uniquement par les développeurs pour diagnostiquer un problème de débogage.

Une sous-directive AddChannel peut également référencer une section channel-install-section ailleurs dans le fichier INF. Chacune de ces sections se présente sous la forme suivante :

[channel-install-section]

[Isolation=isolation-type]
[Access=access-string]
[Enabled=0|1]
[Value=value]
[LoggingMaxSize=max-size]
[LoggingRetention=retention-type]
[LoggingAutoBackup=0|1]

Pour plus d’informations sur les attributs de canal, consultez ChannelType défini dans le schéma EventManifest.

Channel-Install Section Entrées et valeurs

Isolement=isolation-type
Spécifie éventuellement les autorisations d’accès par défaut pour le canal sous la forme d’une des valeurs numériques suivantes, exprimées soit en décimales, soit, comme indiqué dans la liste suivante, en notation hexadécimale. S’il est omis, la valeur par défaut est 0x1 (Application).

0x1 (Application)

0x2 (Système)

0x3 (personnalisé)

Accès=access-string
Spécifie éventuellement un descripteur d’accès SDDL ( Security Descriptor Definition Language ) qui contrôle l’accès au fichier journal qui sauvegarde le canal.

Cette chaîne contrôle l’accès en lecture au fichier (les autorisations d’écriture sont ignorées) si l’isolation est définie sur 0x1 (Application) ou 0x2 (Système), tandis qu’elle contrôle l’accès en écriture au canal et l’accès en lecture au fichier si l’attribut d’isolation est défini sur 0x3 (Personnalisé).

Activé=0|1
Spécifie éventuellement si le canal est activé. S’il est omis, la valeur par défaut est 0 (désactivée).

Étant donné que 0x3 (Analytique) et 0x4 ( Débogage) sont des canaux à volume élevé, vous devez définir Activé sur 1 uniquement lors de l’examen d’un problème avec un composant qui écrit dans ce canal. Chaque fois que vous activez un canal 0x3 (Analytique) et 0x4 (Débogage), le service efface les événements du canal.

Valeur=Valeur
Spécifie éventuellement un identificateur numérique qui identifie de manière unique le canal dans la liste des canaux définis par le fournisseur.

LoggingMaxSize=max-size
Spécifie éventuellement la taille maximale, en octets, du fichier journal. La valeur par défaut (et minimale) est de 1 Mo.

LoggingRetention=retention-type
Spécifie éventuellement si le fichier journal est 0x1 (circulaire) ou 0x2 (séquentiel). La valeur par défaut est 0x1 (circulaire) pour 0x1 (Administration) et 0x2 (Opérationnel) canal-type et 0x2 (séquentiel) pour 0x3 (Analytique) et 0x4 (Déboguer).

LoggingAutoBackup=0|1
Spécifie éventuellement s’il faut créer un fichier journal lorsque le fichier journal actuel atteint sa taille maximale. Définissez sur 1 pour demander au service de créer un fichier lorsque le fichier journal atteint sa taille maximale ; sinon, 0. Vous pouvez définir LoggingAutoBackup sur 1 uniquement si LoggingRetention est défini sur 0x2 (séquentiel) et uniquement pour letype de canal 0x1 (Administration) et 0x2 (Opérationnel).

Exemples

Cet exemple montre les sections event-provider-install référencées par les directives AddEventProvider , comme indiqué précédemment dans l’exemple pour DDInstall. Événements.

[foo_Event_Provider_Inst]
ProviderName  = FooCollector
ResourceFile  = %13%\FooResource.dll
MessageFile   = %13%\FooMessage.exe

[bar_Event_Provider_Inst]
ProviderName  = BarCollector
ResourceFile  = %13%\BarResource.exe
MessageFile   = %13%\BarMessage.dll
ParameterFile = %13%\BarParameter.dll
ImportChannel = Microsoft-Windows-BaseProvider/Admin
AddChannel    = Bar-Provider/Admin,0x1,bar_Channel2_Inst    ; Admin type
ImportChannel = Microsoft-Windows-BaseProvider/Operational
ImportChannel = Microsoft-Windows-SampleProvider/Admin
AddChannel    = Bar-Provider/Debug,0x4                      ; Debug type

[bar_Channel2_Inst]
Isolation         = 2                                       ; System isolation
Enabled           = 1
Value             = 17
LoggingMaxSize    = 20971520
LoggingRetention  = 2                                       ; Sequential
LoggingAutoBackup = 1

Voir aussi

DDInstall. Événements