Direttiva INF AddEventProvider

Una direttiva AddEventProvider viene usata all'interno di un inF DDInstall. Sezione Eventi. Specifica le caratteristiche della traccia eventi per i provider Windows (ETW) associati ai driver. Questa direttiva è supportata per Windows 10 versione 1809 e successive.

[DDInstall.Events] 

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

Voci

ProviderGUID
Specifica il valore GUID che identifica il provider. Può essere espresso come valore GUID esplicito del modulo {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} o come token di %strkey% definito in {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} in una sezione Stringhe del file INF.

event-provider-install-section
Fa riferimento a una sezione definita dal writer INF che contiene informazioni per la registrazione del provider per questo dispositivo (o dispositivi). Per altre informazioni, vedere la sezione Osservazioni seguente.

Remarks

Le estensioni definite dal sistema e senza distinzione tra maiuscole e minuscole possono essere inserite in una DDInstall. Sezione Eventi che contiene una direttiva AddEventProvider nei file INF multipiattaforma e/o multipiattaforma per specificare installazioni specifiche della piattaforma o specifiche del sistema operativo.

Ogni nome di sezione creato da INF-writer deve essere univoco all'interno del file INF e deve seguire le regole generali per la definizione dei nomi di sezione. Per altre informazioni su queste regole, vedere Regole di sintassi generali per i file INF.

Una direttiva AddEventProvider deve fare riferimento a una sezione denominata event-provider-install-section altrove nel file INF. Ogni sezione di questo tipo ha il formato seguente:

[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])
...

Ogni event-provider-install-section deve fornire ProviderName e ResourceFile. Facoltativamente, specificare un elenco di canali per il provider usando qualsiasi combinazione di ImportChannel e AddChannel,ognuna in una riga separata. Per altre informazioni sugli elenchi di canali in un file INF, vedere Specifica di un elenco di canali di seguito. Per altre informazioni sui canali del registro eventi di Windows, vedere Definizione dei canali.

Voci e valori della sezione event-Provider-Install

ProviderName=nome
Specifica il nome del provider. Il nome non può contenere più di 255 caratteri e non può contenere i caratteri: '>', '<', '&', '', '|', '', ':', ''', '?', '*', '*' o caratteri con valori ASCII inferiori a 31. Inoltre, il nome deve seguire i vincoli generali sui nomi di chiave del file e del Registro di sistema. Questi vincoli sono disponibili in Naming a File and Registry Element Size Limits .These constraints can be found at Naming a File and Registry Element Size Limits.

ResourceFile=path-to-file
Specifica il percorso dell'exe o dll che contiene le risorse di metadati del provider, espresse come %dirid%\filename.

Il numero dirid è un identificatore di directory personalizzato o uno degli identificatori di directory definiti dal sistema descritti in Uso di Dirids.

MessageFile=path-to-file
Facoltativamente, specifica il percorso del file exe o dll che contiene le risorse del messaggio localizzate del provider, espresse come %dirid%\filename.

ParameterFile=path-to-file
Facoltativamente, specifica il percorso dell'exe o dll che contiene le risorse della stringa del parametro del provider, espresse come %dirid%\filename.

ImportChannel=channel-name
Facoltativamente, specifica un canale definito da un altro provider. Per altre informazioni, vedere la sezione Specifica di un elenco di canali seguente.

AddChannel=channel-name, channel-type[,channel-install-section]
Facoltativamente, specifica un canale con una sotto-direttiva che fa facoltativamente riferimento a una sezione CHANNEL-install-defined definita da INF altrove nel file INF. Per altre informazioni, vedere la sezione Specifica di un elenco di canali seguente.

Specifica di un elenco di canali

È possibile specificare un elenco di canali per il provider all'interno della relativa sezione event-provider-install-section. È possibile importare un canale o aggiungere un canale all'elenco e l'ordine di questi canali viene mantenuto. Per altre informazioni, vedere Definizione dei canali.

Il nome del canale deve essere univoco all'interno dell'elenco dei canali usati dal provider. Il nome del canale deve essere minore di 255 caratteri e non può contenere i caratteri seguenti: '>', '', '<', '&', '', '|', '', ':', '', '?', '*' o caratteri con valori ASCII inferiori a 31.

Il tipo di canale può essere specificato come uno dei valori numerici seguenti, espresso in decimale o, come illustrato nell'elenco seguente, in notazione esadecimale.

0x1 (amministratore)
I canali di tipo amministratore supportano eventi destinati a utenti finali, amministratori e personale di supporto. Gli eventi scritti nei canali di amministrazione devono avere una soluzione ben definita in cui l'amministratore può agire.

0x2 (operativo)
I canali di tipo operativo supportano gli eventi usati per l'analisi e la diagnosi di un problema o di un'occorrenza. Possono essere utilizzati per attivare strumenti o attività basate su un problema o un'occorrenza.

0x3 (analitico)
I canali di tipo analitico supportano eventi pubblicati in volumi elevati. Descrivono l'operazione del programma e indicano problemi che non possono essere gestiti dall'intervento dell'utente.

0x4 (debug)
I canali dei tipi di debug supportano gli eventi usati esclusivamente dagli sviluppatori per diagnosticare un problema per il debug.

Una sotto-direttiva AddChannel può anche fare riferimento a una sezione channel-install-section altrove nel file INF. Ogni sezione di questo tipo ha il formato seguente:

[channel-install-section]

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

Per altre informazioni sugli attributi del canale, vedere ChannelType definito nello schema EventManifest.

voci e valori della sezione Channel-Install

Isolamento=tipo di isolamento
Facoltativamente, specifica le autorizzazioni di accesso predefinite per il canale come uno dei valori numerici seguenti, espresso in decimale o, come illustrato nell'elenco seguente, in notazione esadecimale. Se omesso, per impostazione predefinita viene 0x1 (applicazione).

0x1 (applicazione)

0x2 (sistema)

0x3 (personalizzato)

Accesso=access-string
Facoltativamente, specifica un descrittore di accesso SDDL ( Security Descriptor Definition Language ) che controlla l'accesso al file di log che supporta il canale.

Questa stringa controlla l'accesso in lettura al file (le autorizzazioni di scrittura vengono ignorate) se l'isolamento è impostato su 0x1 (applicazione) o 0x2 (sistema), mentre controlla l'accesso in scrittura al canale e l'accesso in lettura al file se l'attributo di isolamento è impostato su 0x3 (personalizzato).

Abilitato=0|1
Facoltativamente, specifica se il canale è abilitato. Se omesso, il valore predefinito è 0 (disabilitato).

Poiché 0x3 (analitico) e 0x4 (debug) tipo di canale sono canali con volumi elevati, è consigliabile impostare Abilitato su 1 solo quando si esamina un problema con un componente che scrive in tale canale. Ogni volta che si abilita un canale 0x3 (analitico) e 0x4 (debug), il servizio cancella gli eventi dal canale.

Valore=value
Facoltativamente, specifica un identificatore numerico che identifica in modo univoco il canale all'interno dell'elenco di canali definiti dal provider.

LoggingMaxSize=max-size
Facoltativamente, specifica le dimensioni massime, in byte, del file di log. Il valore predefinito (e minimo) è 1 MB.

LoggingRetention=retention-type
Facoltativamente, specifica se il file di log è 0x1 (circolare) o 0x2 (sequenziale). Il valore predefinito è 0x1 (circolare) per 0x1 (amministratore) e 0x2 (operativo) tipo di canale e 0x2 (sequenziale) per 0x3 (analitico) e 0x4 (debug).

LoggingAutoBackup=0|1
Facoltativamente, specifica se creare un nuovo file di log quando il file di log corrente raggiunge le dimensioni massime. Impostare su 1 per richiedere che il servizio crei un nuovo file quando il file di log raggiunge le dimensioni massime; in caso contrario, 0. È possibile impostare LoggingAutoBackup su 1 solo se LoggingRetention è impostato su 0x2 (sequenziale) e solo per 0x1 (amministratore) e 0x2 (operativo).

Esempi

Questo esempio mostra le sezioni event-provider-install a cui fanno riferimento le direttive AddEventProvider come illustrato in precedenza nell'esempio per DDInstall. Eventi.

[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

Vedere anche

DDInstall. Eventi